Switch 函數

套用到
Microsoft 365 Access Access 2024 Access 2021 Access 2019 Access 2016

會評估一份運算式清單,然後針對清單中第一個為 True 的運算式,傳回其相關的 Variant 值或運算式。

語法

切換 (expr-1, value-1 [, expr-2, value-2 ] ...[, expr-n, value-n ] )

Switch 函數語法具有下列引數:

引數 描述
expr 必要。 您要評估的變體運算式。
數值 必要。 如果對應的運算式為 True,要傳回的值或運算式。

註解

Switch 函數引數清單由數對運算式和值組成。 運算式會從左至右評估,並傳回與第一個要評估為 True 的運算式相關聯的值。 如果零件未正確配對,則會發生執行階段錯誤。 例如,如果 expr-1True,Switch 會傳值 -1。 如果運算式 1False,但運算式 2True,Switch 會傳回值 2,依此類推。

如果出現以下情況,Switch 會傳回 Null 值:

  • 所有運算式都不是 True
  • 第一個 True 運算式的對應值為 Null

Switch 會評估所有運算式,即使它只傳回其中一個運算式。 因此,您應該注意不良副作用。 例如,如果任何運算式的評估結果為除以零的錯誤,便會發生錯誤。

查詢範例

運算式 結果
SELECT ProductSales.ProductID, switch ([ProductID]=“PRO_XYZ1”,“First”,[ProductID]=“PRO_XYZ2”,“Two”,[ProductID]=“PRO_XYZ1”,“Ten”) AS testSwitch FROM ProductSales; 傳回 “ProductID”,評估 “Switch” 公式中的運算式,並使用所有 “True” 運算式的定義值切換現有值。 例如:「PRO_XYZ1」會由「第一個」取代、「PRO_XYZ2」會由「二」取代,依此類推。

VBA 範例

注意

下列範例示範如何在 Visual Basic for Applications (VBA) 模組中使用此函數。 如需使用 VBA 的詳細資訊,請在 [搜尋] 旁的下拉式清單中選取 [開發人員參考],並在 [搜尋] 方塊中輸入一個或多個字詞。

此範例使用 Switch 函數傳回符合城市名稱的語言名稱。

Function MatchUp (CityName As String)
    Matchup = Switch(CityName = "London", "English", _
              CityName = "Rome", "Italian", _
              CityName = "Paris", "French")
End Function