Mit einer Select Case Anweisung kann man sehr elegant eine Menge IF ELSE Bedingungen umgehen. Dazu müssen aber ein paar Bedingungen erfüllt sein.
- Man darf sich immer nur auf eine Variable/Ausdruck beziehen, die man überprüfen will.
- Alle möglichen
Stati Status der Variable sollten bekannt sein. - Es sollte eine Default (Standard) Anweisung geben.
Die Syntax sieht wie folgt aus.
Select Case (expression)
Case option1
statement1
Case option2
statement2
.
.
.
Case optionn
statementn
Case Else
statementd
End Select
Dabei ist expression die Variable oder der Ausdruck der zu überprüfen ist. Case leitet den Fall ein der zu überprüfen ist. und Case Else leitet den Default (Standard) Fall ein der ausgeführt wird wenn nichts vorheriges passt.
Bei den einzelnen Fällen gibt es noch verschiedene Methoden der Schreibweise. Mit der man sich geschickt wieder ein paar Zeilen Code sparen kann.
- Case 1
- Führe aus wenn Ausdruck gleich 1.
- Case 2, 4
- Führe aus wenn Ausdruck gleich 2 oder 4.
- Case 5 To 6
- Führe aus wenn Ausdruck zwischen 5 und 6.
- Case IS > 6
- Führe aus wenn Ausdruck ist größer als 6.
Zum Schluss nochmal ein Beispiel, das alle außergewöhnlichen Case Fälle darstellt
Select Case Variable
Case IS < 5
Debug.Print "kleiner als 5"
Case 6, 7, 8
Debug.Print "6, 7 oder 8"
Case 8 TO 12
Debug.Print "Zwischen 8 und 12"
Case Else
Debug.Print "Nicht zwischen 1 und 12"
End Select
So viel Spaß beim hacken in VBA.