Оценява списък с изрази и връща стойност от тип Variant или израз, свързани с първия израз в списъка, който е True.
Синтаксис
Switch(израз-1; стойност-1 [, израз-2; стойност-2 ] ... [, израз-n, стойност-n ] )
Синтаксисът на функцията Switch има следните аргументи:
| Аргумент | Описание |
|---|---|
| израз | Задължително. Израз за вариант, който искате да оцените. |
| стойност | Задължително. Стойност или израз за връщане, ако съответният израз е True. |
Забележки
Списъкът с аргументи за функцията Switch се състои от двойки изрази и стойности. Изразите се изчисляват отляво надясно и се връща стойността, свързана с първия израз, който е оценен като True . Ако частите не са правилно сдвоени, възниква грешка по време на изпълнение. Ако например израз-1 е истина, Switch връща стойност-1. Ако израз-1 е False, а израз-2 е True, 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