Вычисляет список выражений и возвращает значение типа Variant или выражение, связанное с первым выражением в списке, принимающим значение True.
Синтаксис
Switch( выражение-1, значение-1 [, выражение-2, значение-2] … [, выражение-n,значение-n ] )
Функция Switch имеет следующие аргументы:
Аргумент |
Описание |
выражение |
Обязательный аргумент. Выражение типа Variant, которое требуется вычислить. |
значение |
Обязательный аргумент. Значение или выражение, которое возвращается, если соответствующее выражение принимает значение Истина. |
Замечания
Список аргументов функции Switch представляет собой пары выражений и значений. Выражения вычисляются слева направо, после чего возвращается значение, соответствующее первому выражению, для которого получено значение Истина. Если попарная группировка частей выполнена неправильно, возникает ошибка во время выполнения. Например, если для аргумента выражение_1 получено значение Истина, функция Switch возвращает значение_1. Если для аргумента выражение_1 получено значение Ложь, а для выражение_2 — значение Истина, функция Switch возвращает значение_2, и так далее.
Switch возвращает значение Null, если:
-
Ни для одного из выражений не было получено значение Истина.
-
С первым выражением, для которого было получено значение Истина, связано значение Null.
Функция Switch вычисляет все выражения, хотя возвращает значение лишь для одного из них. Поэтому следует учесть возможность нежелательных последствий. Например, если в процессе вычисления одного из выражений произойдет деление на нуль, возникнет ошибка.
Пример запроса
Expression |
Результаты |
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" заменяется на "First", "PRO_XYZ2" заменяется на "Два" и т. д. |
Пример VBA
Примечание: В примерах ниже показано, как использовать эту функцию в модуле Visual Basic для приложений (VBA). Чтобы получить дополнительные сведения о работе с VBA, выберите Справочник разработчика в раскрывающемся списке рядом с полем Поиск и введите одно или несколько слов в поле поиска.
В этом примере с помощью функции Switch определяется язык, на котором говорят в данном городе.
Function MatchUp (CityName As String)
Matchup = Switch(CityName = "London", "English", _ CityName = "Rome", "Italian", _ CityName = "Paris", "French") End Function