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ýraz n, hodnota-n ] )
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 argumentov funkcie Switch pozostáva z dvojíc výrazov a hodnôt. Výrazy sa vyhodnocujú zľava doprava a vráti sa hodnota priradená prvému výrazu, ktorý sa má vyhodnotiť ako True . Ak časti nie sú správne spárované, počas spúšťania sa vyskytne chyba. Ak má napríklad výraz1 hodnotu True, funkcia Switch vráti hodnotu-1. Ak má výraz1hodnotu False, ale výraz2 má hodnotu True, funkcia Switch vráti hodnotu2 atď.
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 prepína existujúce hodnoty na definované hodnoty pre všetky výrazy s hodnotou True. Napríklad: "PRO_XYZ1" sa nahrádza slovom "Prvý", "PRO_XYZ2" sa nahrádza slovom "Dva" a tak ďalej. |
Príklad 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