In der Regel werden Sie die Select...Case-Verzweigung
so verwenden, dass der zu prüfende variable Ausdruck im Select-Teil
steht und die Bedingungen bzw. Bedingungsausdrücke dazu in den
einzelnen Case-Zweigen - beispielsweise:
Select Case a
Case < 0
' ...
Case 0 To 100
' ...
Case > b
' ...
Case Else
' ...
End Select
Diese Verwendung entspricht einer If...ElseIf...Else...End
If-Verzweigung:
If a < 0 Then
' ...
ElseIf (a >= 0) Or (a <= 100) Then
' ....
ElseIf a > b Then
' ...
Else
' ...
End If
Im Vergleich ist die Select...Case-Verzweigung hier die
sinnvollere, da ja der zu prüfende Ausdruck a für alle Zweige der
gleiche ist.
Eine If-Verzweigung, bei sich der zu prüfende Ausdruck in den
einzelnen Zweigen unterscheidet, sähe dagegen etwa wie folgt aus:
If a < 0 Then
' ...
ElseIf b = 10 Then
' ...
ElseIf a = b Then
' ...
Else
' ...
End If
Auf den ersten Blick scheint die Logik einer solchen Verzweigung
nicht als Select...Case-Verzweigung darstellbar zu
sein. Doch wenn sie bedenken, dass in einer If-Verzweigung letztlich
nur der Wahrheitsgehalt eines Ausdrucks (einer Aussage)
ausschlaggebend ist, können Sie anstelle des variablen
Prüfausdrucks im Select-Teil auch einen konstanten Ausdruck,
genauer gesagt: die Konstante True setzen:
Select Case True
Case a < 0
' ...
Case b = 10
' ...
Case a = b
' ...
Case Else
' ...
End Select
Eine konkrete, praktische Anwendung dieser Umkehrung sehen Sie in
"Wahlergebnisse"
|