Herbers Excel-Forum - das Archiv

for Schleife wird nicht erkannt

Bild

Betrifft: for Schleife wird nicht erkannt
von: Eva

Geschrieben am: 02.03.2005 15:54:24
Hallo,
habe bei folgendem Code das Problem, dass beim Abspielen des Codes der Fehler "Next ohne For" auftaucht. Was habe ich falsch gemacht?
Sub MitarbeiterListeAnpassen()
Dim i As Integer
For i = 3 To 5400
If Cells(i, 5).Value = "67407" Or "67410" Then
If Cells(i, 6).Value = "DD OP" Or "DD VA" Then Call ZeileLöschen(i)
Next i
End Sub

Mit Dank+Gruß
Eva
Bild

Betrifft: Da fehlt ein "End If" vor "Next i" o.w.T.
von: Reinhard
Geschrieben am: 02.03.2005 15:56:14
Bild

Betrifft: oder 2 "end if"?
von: c0bRa

Geschrieben am: 02.03.2005 16:12:26
sind ja 2 if anweisungen in der for schleife...
oder interpretiert VBA einen if befehl so wie auch C/C++, dass wenn er in der selben zeile den befehl erhält (bzw ohne {}) dass er automatisch dann den einen befehl ausführt und sich die {} bzw das end if dahinterdenkt?
Sub MitarbeiterListeAnpassen()
Dim i As Integer
For i = 3 To 5400
If Cells(i, 5).Value = "67407" Or "67410" Then
If Cells(i, 6).Value = "DD OP" Or "DD VA" Then
Call ZeileLöschen(i)
End If
End If
Next i
End Sub

das wäre mein vorschlag. *murmelt was von vernünftigem einrücken von schleifen*
c0bRa
Bild

Betrifft: Ja, ein Befehl hinter Then braucht kein End If owT
von: Reinhard
Geschrieben am: 02.03.2005 16:21:13
Bild

Betrifft: wieder was gelernt ;)
von: c0bRa (oT)
Geschrieben am: 02.03.2005 16:32:03
Bild

Betrifft: AW: for Schleife wird nicht erkannt
von: UweD

Geschrieben am: 02.03.2005 15:57:54
Hallo
so klapp es:
Sub MitarbeiterListeAnpassen()
Dim i As Integer
For i = 3 To 5400
If Cells(i, 5).Value = "67407" Or Cells(i, 5).Value = "67410" Then
If Cells(i, 6).Value = "DD OP" Or Cells(i, 6).Value = "DD VA" Then Call ZeileLöschen(i)
Next i
End Sub

Gruß UweD
Bild

Betrifft: AW: for Schleife wird nicht erkannt
von: EtoPHG

Geschrieben am: 02.03.2005 16:08:45
Hallo EVA,
Beide haben recht, aber doch nicht vollständig.... :-)
Sub MitarbeiterListeAnpassen()
Dim i As Integer
For i = 3 To 5400
If Cells(i, 5).Value = "67407" Or Cells(i, 5).Value = "67410" Then
If Cells(i, 6).Value = "DD OP" Or Cells(i, 6).Value = "DD VA" Then Call ZeileLöschen(i)
End If
Next i
End Sub

Gruss Hansueli
Bild

Betrifft: Danke sehr. oT
von: Eva
Geschrieben am: 02.03.2005 16:11:52
bb
 Bild
Excel-Beispiele zum Thema "for Schleife wird nicht erkannt"
In einer Schleife auf Elemente einer UserForm zugreifen CheckBoxes in UserForms in eine Schleife einbinden
Gruppe von UserForm-ListBoxes über eine Schleife ansprechen UserForm-Optionsfelder über eine Schleife zurücksetzen