VBScript - Fehler in DO-LOOP
Guten Abend zusammen,
ich sitze hier grad vor einem VBScript und komme einfach nicht weiter. Und zwar sieht der Code zum Zeitpunkt "JETZT" so aus:
Sobald ich alle Else If - Bedingungen auskommentiere funktioniert alles wunderbar. Ansonsten erscheint folgende Meldung:
Bin mal gespannt, was ich übersehen habe!! Das OS ist Windows Server 2003.
Grüße
Dani
Do
strOU2 = UCase(InputBox("Bitte geben Sie die Jahrgangszahl ein:"& VBCR &"(z.B. 2006)","Abfrage"))
If strOU2 = "" Then
MsgBox("Keine Jahreszahl angegeben!")
Else If (Len(strOU2) < "4") Then
MsgBox("Bitte 4 stellig!")
strOU2 = ""
Else If (Len(strOU2) > 4) Then
MsgBox("Die Jahrszahl ist zu groß!")
strOU2 = ""
End If
Loop While strOU2 = ""
Bin mal gespannt, was ich übersehen habe!! Das OS ist Windows Server 2003.
Grüße
Dani
Please also mark the comments that contributed to the solution of the article
Content-Key: 55993
Url: https://administrator.de/contentid/55993
Printed on: April 25, 2024 at 22:04 o'clock
2 Comments
Latest comment
Hallo Dani!
Eine der erfrischendsten Eigenschaften der VB*-Fehlermeldungen ist, dass bei nicht abgeschlossenen Blöcken der Schuldige meist an der völlig falschen Stelle gesucht/gemeldet wird ...
Nicht abgeschlossen sind bei Deinem Beispiel die beiden "Else If"-Konstrukte - durch die Leerstelle dazwischen werden sie nämlich als jeweils neue "If-Then-End If"-Blöcke betrachtet, so dass also die beiden "End If" fehlen würden.
Wenn Du jeweils "ElseIf" ohne Leerstelle schreibst, ist der Spuk vorbei.
Grüße
bastla
Eine der erfrischendsten Eigenschaften der VB*-Fehlermeldungen ist, dass bei nicht abgeschlossenen Blöcken der Schuldige meist an der völlig falschen Stelle gesucht/gemeldet wird ...
Nicht abgeschlossen sind bei Deinem Beispiel die beiden "Else If"-Konstrukte - durch die Leerstelle dazwischen werden sie nämlich als jeweils neue "If-Then-End If"-Blöcke betrachtet, so dass also die beiden "End If" fehlen würden.
Wenn Du jeweils "ElseIf" ohne Leerstelle schreibst, ist der Spuk vorbei.
Grüße
bastla