Перейти к содержанию

если

Функция если возвращает одно из двух значений в зависимости от выполнения заданного условия.

Функция пригодится, когда результат должен меняться в зависимости от значения поля, сравнения или логического условия.

Синтаксис

если(условие, значение_если_истина, значение_если_ложь)

Параметры:

  • условие — условие, которое определяет результат функции. Обязательный параметр;
  • значение_если_истина — значение, которое функция вернёт, если условие выполняется. Обязательный параметр;
  • значение_если_ложь — значение, которое функция вернёт, если условие не выполняется. Обязательный параметр.

В качестве возвращаемых значений можно использовать:

  • текст;
  • числа;
  • значения полей;
  • результаты других функций;
  • выражения;
  • пусто.

Возвращаемое значение

Если условие выполняется, функция возвращает значение_если_истина. Если условие не выполняется — значение_если_ложь.

Например:

если(количество > 10, 100, 50)

Если количество больше 10, результат:

100

В противном случае:

50

Условия

В качестве условия можно использовать поле «Да/Нет»:

если(доставка, "Доставка требуется", "Доставка не требуется")

Если доставка = Да, функция вернёт Доставка требуется, если НетДоставка не требуется.


Условие также можно сформировать с помощью сравнений и логических операций.

Например:

если(
    сумма >= 50000 и сумма <= 100000,
    "Средняя сделка",
    "Другой диапазон"
)

Подробнее о записи сравнений, логических операциях и построении выражений см. в разделе «Синтаксиса».


Числовое значение 1 также может использоваться как истинное условие:

если(1, "Да", "Нет")

Результат:

Да

Примеры

Возврат значений полей

если(
    доставка,
    стоимостьСДоставкой,
    стоимостьБезДоставки
)

Функция вернёт значение одного из двух полей в зависимости от значения доставка.


Использование другой функции

если(
    доставка,
    прописн(способДоставки),
    "Самовывоз"
)

Если доставка требуется, функция вернёт результат функции прописн. В противном случае — Самовывоз.


Возврат пустого значения

если(доставка, "Доставка", пусто)

Если условие не выполняется, функция вернёт пустое значение.


Вложенные условия

Функцию если можно использовать внутри другой функции если:

если(
    сумма > 100000,
    "Крупная",
    если(
        сумма > 50000,
        "Средняя",
        "Обычная"
    )
)

В зависимости от значения сумма функция вернёт Крупная, Средняя или Обычная.

Ошибки

Все три параметра функции обязательны.

Например:

если(доставка, "Да")

вернёт ошибку из-за отсутствия третьего параметра.

Ошибка также возникает, если переданное условие не может быть обработано функцией.

Например:

если("текст", "Да", "Нет")

вернёт ошибку.