Thema Datum  Von Nutzer Rating
Antwort
04.09.2016 13:25:54 Marc
NotSolved
05.09.2016 09:02:52 Gast96524
NotSolved
05.09.2016 15:32:08 Gast19560
NotSolved
Blau Fehlermeldung "Laufzeitfehler 9: Indexnummer außerhalb des gültigen Bereichs
05.09.2016 17:40:48 Gast40848
*****
NotSolved
06.09.2016 16:45:00 Gast92968
Solved

Ansicht des Beitrags:
Von:
Gast40848
Datum:
05.09.2016 17:40:48
Views:
783
Rating: Antwort:
  Ja
Thema:
Fehlermeldung "Laufzeitfehler 9: Indexnummer außerhalb des gültigen Bereichs

Moin! Also hier der Code zurück. Wie schon geschrieben, haben mE die ersten Schleifen zur Anzahlbestimmungnicht gepasst. Die anzahl wurde glaube ich falsch berechnet. Habe das mal geändert und kommentiert. Unten der Fehler war entstanden, weil du Z = Z+1 nach der Prüfung hattest. Das musste aber mit in die if then davor. Bei dir wurde bei jedem Durchlauf Z hochgesetzt. Da aber nicht alle Werte für ein Bild auf der Vorderseite stehen, kam dann der Überlauf. Richtiger ist, nur wenn du eine Bildnummer in das Array schreibst, Z zu erhöhen. Ist unten mit behoben. Probiere es mal so. VG

 

Private Sub CommandButton1_Click()
Dim MaxSeitenan As Long
Dim Ausgabe As String
Dim Seiten() As Long
Dim i As Long
Dim Z As Long
Dim S As Long

MaxSeitenan = InputBox("Bitte die Gesamtseitenanzahl eingeben")
'Herausfinden der Folienseitenzahlen für die Vorderseiten'
S = MaxSeitenan

'prüft erstmal wieviele volle Blätter (Vorder + Rückseite) es gibt, die Anzahl *4
anzahl = Int(S / 8) * 4
'der REst an Seiten
T = S Mod 8

If T > 0 And T < 5 Then
'1 bis 4 Bilder also Anzahl vom Rest dazu
    anzahl = anzahl + T
ElseIf T > 4 And T < 8 Then
'noch was auf der zweiten Seiten, dann 4 dazu da dann die Vorderseite voll ist
    anzahl = anzahl + 4
End If

'Array erstellen mit den Seitenzahlen, die auf der Vorderseite der Blätter sein werden'
ReDim Seiten(1 To anzahl)

Z = 1
For i = 1 To MaxSeitenan
    If (i Mod 8) > 0 And (i Mod 8) <= 4 Then
       'anscheinend mein Problem'
        Seiten(Z) = i
        Z = Z + 1
    End If
Next i

'Ausgabe aller Folien für die Vorderseiten der Blätter'
Ausgabe = ""
For i = 1 To anzahl
        If Ausgabe = "" Then
            Ausgabe = Seiten(i)
        Else
            Ausgabe = Ausgabe & "," & Seiten(i)
        End If
Next i

Range("A1").Value = Ausgabe
End Sub

 


Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:



  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
04.09.2016 13:25:54 Marc
NotSolved
05.09.2016 09:02:52 Gast96524
NotSolved
05.09.2016 15:32:08 Gast19560
NotSolved
Blau Fehlermeldung "Laufzeitfehler 9: Indexnummer außerhalb des gültigen Bereichs
05.09.2016 17:40:48 Gast40848
*****
NotSolved
06.09.2016 16:45:00 Gast92968
Solved