Index außerhalb des gültigen Bereichs?
15.09.2003 17:58:38
benni
Laufzeitfehler "Index außerhalb des gültigen Bereichs"
Dieser Fehler tritt schon in der ersten For-Schleife ein. Woran liegt das?
Was hab ich denn da übersehen?
Es wird immer am vorletzten Datensatz abgebrochen...
Sub irgendwas()
Dim ID
Dim anz As Integer
Dim q As Integer
q = 3
While Not IsEmpty(Cells(q, 3)) 'solange es Datensätze gibt
q = q + 1
Wend
anz = q - 3
'MsgBox anz
ReDim astatus(anz) As Integer 'Feld von Statusvariablen
For q = 3 To 3 + anz - 1
'Abfrage, ob alle notwendigen Felder ausgefüllt wurden
If IsEmpty(Cells(q, 1)) Or IsEmpty(Cells(q, 2)) Or IsEmpty(Cells(q, 4)) Then
Cells(q, 1).Interior.ColorIndex = 22 'Färbe erste Zelle rot
astatus(q) = 0
Else
astatus(q) = 1
End If
Next
For q = 3 To 3 + anz - 1
If astatus(q) = 0 Then
MsgBox "Es sind nicht alle notwendigen Angaben gemacht worden. Bitte füllen Sie die markierten Zellen."
Exit Sub
End If
Next
Neuanfang:
ID = InputBox("Bitte Geben Sie den Namen ein, unter dem dieses Registerblatt gespeichert werden soll:", "Speichern", "Name?")
If ID = "" Then
MsgBox "Der Speichervorgang wurde abgebrochen!"
Exit Sub
ElseIf ID = "Name?" Then
MsgBox "Bitte geben Sie einen korrekten Namen ein!"
GoTo Neuanfang
Else
'Dokument wird gespeichert
MsgBox "Das Dokument wurde gespeichert!"
End If
End Sub