Gewusst wie: Prüfen auf mehrere Werte eines Ausdrucks

Aktualisiert: November 2007

Wenn Sie den gleichen Ausdruck mit mehreren unterschiedlichen Werten vergleichen, können Sie die Select...Case-Anweisung (Visual Basic) als Alternative zur If...Then...Else-Anweisung (Visual Basic) verwenden. Die Anweisungen If und ElseIf (Visual Basic) können einen unterschiedlichen Ausdruck in jeder Anweisung auswerten, wohingegen die Select-Anweisung einen einzigen Ausdruck nur einmal auswertet und dann für jeden Vergleich verwendet.

So werten Sie einen Ausdruck einmal aus und testen mehrere Werte

  • Geben Sie mit der Select...Case-Konstruktion den Ausdruck und die zu testenden Werte an. Jede Case-Anweisung kann einen oder mehrere Werte, einen Wertebereich oder eine Kombination aus Werten und Vergleichsoperatoren enthalten. Sie können mit einer Case Else-Anweisung alle Werte verarbeiten, die von den vorhergehenden Case-Anweisungen nicht gestestet wurden. Das folgende Beispiel verdeutlicht diese Möglichkeiten.

    Function bonus(ByVal performance As Integer, ByVal salary As Decimal) _
        As Decimal
        Select performance
            Case 1
                Return salary * 0.1
            Case 2, 3
                Return salary * 0.09
            Case 5 To 7
                Return salary * 0.07
            Case 4, 8 To 10
                Return salary * 0.05
            Case Is < 15
                Return 100
            Case Else
                Return 0
       End Select
    End Function
    

    Visual Basic vergleicht den Wert des Ausdrucks mit den Werten in den Case-Anweisungen in der Reihenfolge, in der Sie in der Select...Case-Konstruktion auftreten. Ist eine Übereinstimmung oder eine Case Else-Anweisung vorhanden, wird der entsprechende Anweisungsblock ausgeführt. Auf jeden Fall wird in die Anweisung verzweigt, die auf die End Select-Anweisung folgt.

    Sie können eine beliebige Anzahl von Case-Anweisungen verwenden und eine Case Else-Anweisung unabhängig vom Vorhandensein von Case-Anweisungen einschließen oder auslassen.

Ein Codebeispiel für die Select...Case-Konstruktion ist auch als IntelliSense-Codeausschnitt verfügbar. Sie finden das Element in der Codeausschnittauswahl unter Programmiersprache Visual Basic. Weitere Informationen finden Sie unter Gewusst wie: Einfügen von Ausschnitten in den Code (Visual Basic).

Siehe auch

Aufgaben

Gewusst wie: Übertragen der Steuerung aus einer Kontrollstruktur

Gewusst wie: Ausführen von Anweisungen in Abhängigkeit von einer oder mehreren Bedingungen

Gewusst wie: Kontrolliertes Reagieren auf Fehler

Konzepte

Entscheidungsstrukturen

Schleifenstruktur

Weitere Steuerungsstrukturen

Geschachtelte Steuerungsstrukturen

Weitere Ressourcen

Ablaufsteuerung in Visual Basic