共用方式為


HOW TO:測試運算式的多個值 (Visual Basic)

以同一個運算式來比較多個不同的值時,您可以使用 Select...Case 陳述式 (Visual Basic) 語法結構,而不用 If...Then...Else 陳述式 (Visual Basic) 語法結構。 If 和 ElseIf 陳述式可以在個別的陳述式中評估不同的運算式,而 Select 陳述式則只會評估單一運算式一次,然後便用它來做所有比較。

評估一次運算式並測試多個值

  • 使用 Select...Case 語法結構來指定運算式和要測試的值。 每個 Case 陳述式都可以包含一或多個值、值範圍,或值與比較運算子的組合。 您可以使用 Case Else 陳述式來處理所有先前 Case 陳述式所沒有測試到的值。 下列範例說明這些可能性。

    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 會循著 Select...Case 語法結構中出現 Case 陳述式的順序,將運算式的值與這些陳述式的值一一做比較。 如果找到相符項目或 Case Else 陳述式,則會執行對應的陳述式區塊。 不論是哪種情況,接著都會執行 End Select 陳述式之後的程式碼。

    您可以使用任何數目的 Case 陳述式;不論有多少個 Case 陳述式,您都可以加入一個 Case Else 陳述式或是省略不用。

關於 Select...Case 語法結構程式碼的範例,另外還有 IntelliSense 程式碼片段的版本。 在程式碼片段選擇器中,這個程式碼片段位於 [Visual Basic 語言] 中。 如需詳細資訊,請參閱 HOW TO:插入 IntelliSense 程式碼片段

請參閱

工作

HOW TO:將控制權轉移出控制結構 (Visual Basic)

HOW TO:依據一個或多個條件執行陳述式 (Visual Basic)

HOW TO:發生錯誤時保留控制權 (Visual Basic)

概念

決策結構 (Visual Basic)

迴圈結構 (Visual Basic)

其他控制結構 (Visual Basic)

巢狀控制結構 (Visual Basic)

其他資源

Visual Basic 中的控制流程