Im Leben müssen Entscheidungen getroffen werden. Genauso in den Programmiersprachen. Dazu stehen die logischen Bedingungen zur Verfügung
Vermutlich die häufigste Notation in einem Programm um zu prüfen ob eine Bedingung erfüllt ist.
if MsgBox("Nochmals?",vbYesNo)=vbyes then MsgBox "Sie wollen nochmals"
Die einzeilige Schreibweise eignet sich für einfache, kurze Bedingungen.Demgegenüber steht die Mehrzeilige Anweisung:
if inputbox("Welches Datum ist heute?")=date() then msgBox "Richtig, bravo!" else msgBox "Sorry, leider falsch." end if
Der Befehl inputbox(...) befragt in VisualBasic den Anwender nach einem Datum. Ist dieses Datum gleich dem aktuellen Systemdatum welches mit der Funktion today() ermittelt werden kann, wird unmittelbar nach der if-Zeile eine Dialogbox ausgegeben. Wenn die Bedingung falsch ist wird der Programmcode hinter else ausgeführt.
Manchmal müssen auch mehrere Bedingungen geprüft werden:
vWetter = "schön" vTemperatur = "heiss" if vWetter = schön and vTemperatur = "heiss" then msgBox("Heute gehen wir baden") elseIf vWetter = schön and vTemperatur = "kalt" then MsgBox("Ev ist eine Wanderung angesagt") else msgBox "Keine Angaben vorhanden" end if
Es ist nicht nur unschön viele IF's hintereinander zu schachteln sondern auch von der Ausführungsgeschwindigkeit nicht optimal. Muss nur eine Bedingung geprüft werden so bietet sich ein Select Case an:
vAntwort=inputbox("Bitte geben Sie eine Farbe ein") select case vAntwort case "rot" msgBox("wie die Liebe") case "violet" msgBox("bringt unheil") case "schwarz","Weiss" msgBox("das ist keine Farbe") case else msgBox("Kenne ich nicht") end select
In der ersten Zeile wird der Anwender um die Eingabe einer Farbe gebeten. Diese Farbe wird in der Variabel vAntwort abgelegt.
Mit Select wird die Variabel vAntwort auf deren Inhalt geprüft und je nach dem in den entsprechenden Case verzweigt. Trift keiner der Fälle zu, so wird case else ausgeführt.