Vyhodnotí zoznam výrazov a vráti hodnotu typu Variant alebo výraz priradený prvému výrazu v zozname, ktorý má hodnotu Pravda.
Syntax
Switch( výraz1, hodnota1 [, výraz2, hodnota2 ] … [, výrazn, hodnotan ] )
Syntax funkcie Switch má tieto argumenty:
Argument |
Popis |
výraz |
Povinný argument. Výraz typu Variant, ktorý chcete vyhodnotiť. |
hodnota |
Povinný argument. Hodnota alebo výraz, ktoré sa vrátia, ak má zodpovedajúci výraz hodnotu True. |
Poznámky
Zoznam argument funkcie Switch sa skladá z párov výrazov a hodnôt. Výrazy sa vyhodnocujú zľava doprava a vráti sa hodnota priradená k prvému výrazu, ktorý sa má vyhodnotiť ako True . Ak časti nie sú správne spárované, vyskytne sa chyba počas spustenia. Ak má napríklad výraz 1hodnotu True, funkcia Switch vráti hodnotu 1. Ak výraz 1 má hodnotu False, ale výraz 2 má hodnotu True, funkcia Switch vráti hodnotu 2 a tak ďalej.
Funkcia Switch vráti hodnotu Null, ak:
-
Žiadny výraz nemá hodnotu True.
-
Prvý výraz s hodnotou True má zodpovedajúcu hodnotu, ktorá je Null.
Funkcia Switch vyhodnotí všetky výrazy, hoci vráti iba jeden z nich. Z tohto dôvodu by ste mali sledovať nežiaduce vedľajšie efekty. Ak napríklad výsledkom vyhodnotenia ľubovoľného výrazu je delenie nulou, zobrazí sa chyba.
Príklad dotazu
Výraz |
Výsledky |
SELECT ProductSales.ProductID, Switch([ProductID]="PRO_XYZ1","First",[ProductID]="PRO_XYZ2","Two",[ProductID]="PRO_XYZ1","Ten") AS testSwitch FROM ProductSales; |
Vráti hodnotu "ProductID", vyhodnotí výrazy vo vzorci Switch a prepne existujúce hodnoty s definovanými hodnotami pre všetky výrazy "True". Napríklad: výraz "PRO_XYZ1" sa nahrádza výrazom "Prvý", "PRO_XYZ2" sa nahrádza výrazom "Dva" a tak ďalej. |
Príklad jazyka VBA
Poznámka: Nasledujúce príklady ukazujú použitie tejto funkcie v module jazyka Visual Basic for Applications (VBA). Ak chcete získať ďalšie informácie o práci s jazykom VBA, vyberte z rozbaľovacieho zoznamu vedľa položky Hľadať možnosť Odkaz pre vývojára a do vyhľadávacieho poľa zadajte nejaké výrazy.
V tomto príklade je funkcia Switch použitá na vrátenie názvu jazyka, ktorý zodpovedá názvu mesta.
Function MatchUp (CityName As String)
Matchup = Switch(CityName = "London", "English", _ CityName = "Rome", "Italian", _ CityName = "Paris", "French") End Function