VBScript-Bedingungsanweisung: IF…Else & ElseIF (Beispiel)

⚡ Intelligente Zusammenfassung

Bedingte Anweisungen in VBScript ermöglichen es einem Programm, je nach Bedingung Entscheidungen zu treffen und unterschiedlichen Code auszuführen. VBScript bietet vier Formen: If…Then, If…Then…Else, If…Then…ElseIf und Select Case, das basierend auf einem übereinstimmenden Wert einen Codeblock aus mehreren auswählt.

  • 🔀 Wenn…Dann: Führt einen Codeblock nur dann aus, wenn eine Bedingung wahr ist, und muss mit End If enden.
  • ↔️ Wenn…Dann…Sonst: Wählt zwischen zwei Blöcken aus; der eine wird ausgeführt, wenn die Bedingung erfüllt ist, der andere andernfalls.
  • 🪜 Wenn…Dann…SonstWenn: Prüft nacheinander mehrere Bedingungen und führt den ersten passenden Block aus.
  • Fall auswählen: Vergleicht eine Variable mit vielen Werten – eine übersichtlichere Alternative zu langen ElseIf-Ketten.
  • EingangBox Demo: Das Beispiel „Alter“ liest die Benutzereingabe und wählt basierend auf dem eingegebenen Wert eine Nachricht aus.
  • ⚠️ Endmarkierungen: If-Blöcke benötigen End If und Select Case benötigt End Select, sonst erzeugt der Code keine Ausgabe.

VBScript-Bedingungsanweisung

Was ist eine bedingte Anweisung?

Beim Programmieren müssen Sie bestimmte Entscheidungen treffen und auf der Grundlage dieser Entscheidungen verschiedene Aktionen ausführen.

In solchen Situationen verwenden Sie bedingte Anweisungen.

In VBScript gibt es vier Arten von bedingten Anweisungen: If…Then, If…Then…Else, If…Then…ElseIf und Select Case.

VBScript If Then-Anweisung

Sie verwenden die If-Then-Anweisung von VBScript, wenn Sie Code ausführen möchten, wenn eine bestimmte Bedingung erfüllt ist.

Beispielsweise möchten Sie die Meldung „Willkommen“ immer dann ausgeben, wenn der Wert der Variablen „loggedIn“ wahr ist.

In diesem Fall verwenden Sie die If…Then-Anweisung in VBS.

If loggedIn = true Then
document.write("Welcome")
End If

HINWEIS: Wenn Sie vergessen, den Code mit End If zu beenden, erhalten Sie keine Ausgabe.

VBScript If Else-Anweisung

Sie verwenden die VBScript If…Then…Else-Anweisung, wenn Sie einen von zwei Codeblöcken zur Ausführung auswählen möchten.

Zum Beispiel, Sie möchten beispielsweise die Meldung „Hallo, guten Morgen“ ausgeben, wenn der Wert einer Variablen mit dem Namen „Zeit“ kleiner oder gleich zehn ist, und andernfalls die Meldung „Hallo, guten Tag“ ausgeben.

In einem solchen Fall verwenden Sie eine If…Then…Else-Anweisung.

If time <= 10 Then
document.write("Hi, Good Morning")
Else
document.write("Hi, Good Day")
End If

VBScript If Elseif-Anweisung

Sie werden die If…Then…ElseIf-Anweisung verwenden, wenn Sie einen von mehreren Codeblöcken zur Ausführung auswählen müssen.

Zum Beispiel, Wenn Sie die Ausgabe abhängig vom Wochentag ändern möchten, müssen Sie eine If…Then…ElseIf-Anweisung verwenden.

If today="Sunday" Then
document.write("Today is Sunday")
ElseIf today="Monday" Then
document.write("Today is Monday")
ElseIf today="Tuesday" Then
document.write("Today is Tuesday")
ElseIf today="Wednesday" Then
document.write("Today is Wednesday")
ElseIf today="Thursday" Then
document.write("Today is Thursday")
ElseIf today="Friday" Then
document.write("Today is Friday")
ElseIf today="Saturday" Then
document.write("Today is Saturday")
End If

VBScript SELECT Case-Anweisung

Ähnlich wie die If…Then…ElseIf-Anweisung kann auch die VBScript Case-Anweisung verwendet werden, wenn Sie einen von mehreren Codeblöcken zur Ausführung auswählen müssen.

Der gleiche obige Code kann mit der Select Case-Anweisung wie folgt geschrieben werden.

Select Case today
Case "Sunday"
document.write("Today is Sunday")
Case "Monday"
document.write("Today is Monday")
Case "Tuesday"
document.write("Today is Tuesday")
Case "Wednesday"
document.write("Today is Wednesday")
Case "Thursday"
document.write("Today is Thursday")
Case "Friday"
document.write("Today is Friday")
Case "Saturday"
document.write("Today is Saturday")
End Select

Probieren Sie den unten angegebenen Code aus, um das Konzept klarer zu machen.

Wenn sonst wenn Beispiel

Schritt 1) Kopieren Sie den Code in Ihren Editor

<html>
<head>
<script type="text/vbscript">
Dim age
age = InputBox("Enter your age")
If age<18 Then
document.write("You are too young.")
ElseIf age<45 Then
document.write("You are still young.")
ElseIf age<70 Then
document.write("You are getting older.")
Else
document.write("You are too old.")
End If

</script>

</head>
<body>
</body>
</html>

Schritt 2) Speichern Sie die Datei unter dem Namen „condition.html“ an Ihrem bevorzugten Speicherort.

Öffnen Sie nun die Datei im Internet Explorer. Ihr Bildschirm sieht dann wie folgt aus und enthält ein Feld, in dem Sie aufgefordert werden, Ihr Alter einzugeben.

VBScript SELECT Case-Anweisung

Geben Sie einen numerischen Wert ein, beispielsweise 22. Sie erhalten eine Meldung wie diese.

VBScript SELECT Case-Anweisung

Geben Sie verschiedene Werte ein und beobachten Sie die Ausgabe.

Häufig gestellte Fragen

Verwenden Sie `Select Case`, wenn Sie eine Variable mit mehreren festen Werten vergleichen; das ist übersichtlicher als eine lange `ElseIf`-Kette. Verwenden Sie `ElseIf`, wenn die Bedingungen verschiedene Variablen oder Bereiche prüfen.

Ja. Eine einzeilige If-Anweisung wie z. B. If x=1 Then y=2 benötigt kein End If. Ein End If ist nur erforderlich, wenn der If-Block mehrere Zeilen mit separaten Anweisungen umfasst.

Nein. VBScript kennt keinen ternären Operator (?:) und keine integrierte IIf-Funktion. Verwenden Sie einen vollständigen If…Then…Else-Block oder schreiben Sie eine kleine Hilfsfunktion, um einen Wert basierend auf einer Bedingung auszuwählen.

Ja. KI kann eine sich wiederholende If…ElseIf-Kette in einen äquivalenten Select Case-Block umwandeln und so die Lesbarkeit verbessern. Sie kann auch Bedingungen kennzeichnen, die nicht umgewandelt werden können, wie z. B. Bereichsprüfungen.

KI kann fehlende „End If“- oder „End Select“-Anweisungen, falsche Vergleichsoperatoren und nicht erreichbare Verzweigungen erkennen. Sie erklärt, warum eine Bedingung nie ausgeführt wird, und schlägt die Lösung vor, wodurch unbemerkte Fehler ohne Ausgabe reduziert werden.

Fassen Sie diesen Beitrag mit folgenden Worten zusammen: