Перейти к содержимому
Наше приложение «Дешевые авиабилеты» в AppGallery >>

VBA Excel. Функция Switch (синтаксис, примеры)

    Применение функции Switch в коде VBA Excel для выбора значения из списка пар аргументов (выражение, значение) по выражению, имеющему значение True.

    Описание функции Switch

    Функция Switch в VBA Excel анализирует выражения из пар аргументов (выражение, значение) по списку слева направо. Она возвращает значение из первой пары, в которой выражение имеет значение True. Если ни одно выражение из списка не равно True, функция возвращает значение Null.

    Синтаксис

    Switch(expr-1, value-1, expr-2, value-2, … expr-n, value-n)

    Аргументы

    • expr – выражение, задающее условие выбора значения из пары;
    • value – значение*, возвращаемое функцией Switch, если выражение из пары возвратит значение True;
    • expr-1, value-1 – первая пара аргументов (выражение, значение).

    * Значение может быть выражением.

    Несмотря на то, что функция Switch возвращает значение, связанное с первым выражением, имеющем значение True, она проверяет все выражения из списка.

    По своему функционалу функция Switch, использующаяся в VBA Excel, аналогична оператору Select Case.

    Примеры кода с функцией Switch

    Пример 1
    Варианты выражений, задающих условия выбора значений из пар (выражение, значение):

    Функция Switch возвращает значение в зависимости от числа, присвоенного переменной var.

    Пример 2
    Пользовательская функция, определяющая время года по названию месяца с помощью функции Switch:

    Чтобы протестировать функцию VremyaGoda, скопируйте ее в стандартный модуль проекта VBA. Вставить эту функцию на рабочий лист Excel можно с помощью мастера функций из раздела «Определенные пользователем».

    Содержание рубрики VBA Excel по тематическим разделам со ссылками на все статьи.

    Добавить комментарий

    Ваш комментарий будет опубликован после прохождения обязательной модерации. Исходящие ссылки не допускаются. Время модерации составит от нескольких минут до нескольких часов в зависимости от времени суток и занятости модератора.