VBScript Select Case
Inhaltsverzeichnis
VBScript Select Case
Du möchtest mit der VBScript Select Case –Anweisung Verzweigungen im Code umsetzen?
Lerne in diesem Beitrag, wie Du „Select Case“ richtig anwendest.
Vielleicht interessieren Dich auch noch weitere Beiträge wie: VBScript Array, MsgBox, InStr.
Story – VBScript Select Case
In jedem Bereich des Zusammenseins finden wir Entscheidungen, mal Solche und mal Andere.
Entscheidungen bestimmen unseren humanen Alltag als Individuen und können Folgen nach sich ziehen.
So ist es auch im Dasein als Softwareentwickler, denn auch dort müssen wir ständig entscheiden und verarbeiten.
Mehrfachselektion, eine Verzweigung
Gängigerweise werden Entscheidungen in der Softwareentwicklung als Verzweigungen und ebenfalls als Selektion betitelt.
Anhand von gewissen unsererseits festgelegter Merkmale, kann sich die Programmausführung in verschiedene Wege aufsplitten und Folge-Anweisungen ausgeführt werden.
In diesem Beitrag legen wir den Fokus auf die „Select-Case“ Mehrfachselektion, Welche in anderen Programmiersprachen auch Switch genannt wird.
Mehrfachselektion
Die Mehrfachselektion bietet uns hauptsächlich die Möglichkeit, unsere Entscheidungen basierend auf einem einzigen Ausgangspunkt zu fällen.
Wir schauen also auf einen Wert und reagieren dann je nachdem Welches Szenario in Frage kommt.
In vielen modernen Programmiersprachen gibt es die Möglichkeit auch „Ranges“ abzudecken, statt nur vereinzelte Werte zu überprüfen.
Eventuell könnte man bei einer Bewässerungsanlage den Wasserfluss regulieren, Wenn die Feuchtigkeit in gewisse Bereiche kommt.
If-Verzweigungen
Bei If-Verzweigungen haben hingegen einen, oder eben auch mehrere Ausgangspunkte verschiedener Kriterien.
Ich kann beispielsweise überprüfen, ob ein rauer Wind weht, die Sonne dabei scheint und ob es sogar regnet.
Ich kann auch eine Kombination dieser Fälle verarbeiten, wenn z. B. die oben angekündigte Bewässerungsanlage gesteuert werden möchte.
Man kann daraus schließen, dass eine normale If-Abfrage eher für die Kombination einzelner Kriterien geeignet, als es das „Select-Case“ ist.
Eine Selektion – VBScript Select Case
Nun nutze ich die Gelegenheit, ein kurzes und einfaches Beispiel einer VBScript Select Case Abfrage zu demonstrieren:
Dim lastName lastName = "Carl" Select Case lastName Case "Doe": MsgBox("Oh so your first name could be John?") Case "Carl" MsgBox("Are you one of those alpacas?") End Select
Hier deklarieren wir eine Variable „lastName“, Welche danach den Wert „Carl“ zugewiesen bekommt.
Als nächstes startet die „Select-Case“-Anweisung, worin wir checken, ob der Fall eintritt, dass „Doe“ in der Variable steht.
Da „Doe“ nicht der Variablen nicht zugewiesen wurde, gehen wir nicht in den ersten (einzeiligen) Case rein und geben die Box somit nicht aus.
Der zweite Fall (Case) wird abgearbeitet, da der Nachname „Carl“ zugewiesen ist.
Else-Teil – VBScript Select Case
Sehen wir uns nun einmal ein Beispiel an, wo wir das „Else„-Schlüsselwort verwenden, um alle anderen Fälle abzudecken.
Dim lastName lastName = "Rupert" Select Case lastName Case "Doe": MsgBox("Oh so your first name could be John?") Case "Carl": MsgBox("Are you one of those alpacas?") Case Else MsgBox("Hmm, no known name :/") End Select
Eigentlich läuft alles analog zum obigen Beispiel, allerdings geben wir nun eine Meldung aus, falls kein bekannter Fall getroffen wird.
Reichweiten / Ranges verarbeiten
Als nächstes siehst Du Beispiele, wie Du statt einzelner Fälle auch „Ranges“ verarbeiten kannst.
Das erste Beispiel nimmt dafür Buchstaben, wobei VBScript leider im Gegensatz zu VB.NET keine Unterstützung für „Ranges“ an sich hat.
Dim letter letter = "D" Select Case letter Case "A": MsgBox("So it's A?") Case "B": MsgBox("Ok, it's B") Case "C", "D", "E" MsgBox("C, D, or E") Case Else MsgBox("Hmm, no known case :/") End Select
Hier noch eine letzte Demo mit Zahlen:
Dim number number = 4 Select Case letter Case 1: MsgBox("So it's 1?") Case 2: MsgBox("Ok, it's 2") Case 3, 4, 5 MsgBox("3, 4, or 5") Case Else MsgBox("Hmm, no known case :/") End Select