Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Index außerhalb des gültigen Bereichs?

Forumthread: Index außerhalb des gültigen Bereichs?

Index außerhalb des gültigen Bereichs?
15.09.2003 17:58:38
benni
Ich bekomme bei der unten angeführten Schleife immer diese Fehlermeldung:
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

Anzeige

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Index außerhalb des gültigen Bereichs?
15.09.2003 18:16:02
ChrisL
Hi benni

Was soll den das Makro machen?

Habe mal den Code ein kleines Stück gelesen und da gibt es z.B. folgendes Problem...

z.B.

Dein Bereich ist von C3:C6, die Variable 'anz' wird somit auf 4 definiert.

Entsprechend dimensionierst du das Array 'astatus'

Dann lässt du die Schlaufe laufen von...

3 bis 3 + anz - 1 d.h. von 3 bis 6

Dann wird 'astatus' mit 'q' beginnend abgefüllt..

astatus(3)
astatus(4)
astatus(5)
astatus(6)

Da das Array 'astatus' aber nur auf 4 dimensioniert wurde, erhälst du bei q = 5 einen Fehler.

Gruss
Chris
Anzeige
ja klar.... DANKE! o.T.
15.09.2003 18:18:29
benni
*
AW: Array ist kleiner als anz
15.09.2003 18:28:09
ChrisLa
anz ist um 2 größer als dein Array, das verursacht bei den letzten beiden Datensätzen dass Problem, Du müsstet das Array vergrößern oder die For-Next-Schleife 2 Durchgänge weniger machen lassen

Gruß

Chris
AW:anz > Dein Array
15.09.2003 18:29:49
ChrisLa
kam die erste Nachricht an?

anz ist um 2 Werte kleiner als astatus, da liegt der Fehler

Gruß

Chris
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige