Функция IF

Оценивает логическое выражение и возвращает то или иное значение в зависимости от того, истинно это выражение или ложно.

Синтаксис

IF(logical_expression, value_if_true, [value_if_false])
  • logical_expression
    выражение, которое будет оцениваться. Должно быть истинно или ложно.
  • value_if_true
    значение или формула, которое будет возвращено, если логическое выражение истинно.
  • value_if_false—(необязательно)
    значение или формула, которое будет возвращено, если логическое выражение ложно. Если эта часть отсутствует, будет возвращено пустое значение.

Пример использования

=IF([Дата выполнения]1 > [Дата выполнения]2; "Дата 1 больше"; "Дата 2 больше")

Примечания об использовании

  • Функции IF можно вкладывать одну в другую, чтобы оценивать несколько логических выражений сразу. 
  • Smartsheet считывает операторы IF в формуле слева направо и отображает одно из значений в зависимости от того, какое выражение первым было оценено как истинное. Если функции IF вложены одна в другую, необязательный результат return_if_false будет возвращён только в том случае, если все логические выражения будут признаны ложными.

Примеры

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

Номер строки

Артикул

Статус

Дата заказа

В наличии?

1

C001

Зелёный

15.12.2019

истина

2

C002

Красный

12.12.2019

ложь

3

C003

Жёлтый

15.12.2019

истина

4

C004

Зелёный

20.12.2019

истина

 

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

 

Формула

Описание

Результат

=IF([Статус]1 = "Красный", "В зоне риска", "Вовремя")

ЕСЛИ в строке 1 столбца "Статус" содержится значение "Красный", возвращается значение "В зоне риска", а если нет, возвращается значение "Вовремя".

Вовремя

=IF([Дата заказа]2 TODAY(), "Красный", IF([Дата заказа]2 > TODAY(), "Жёлтый", IF([Дата заказа]2 = TODAY(), "Зелёный")))

ЕСЛИ значение строки 2 в столбце "Дата заказа" меньше СЕГОДНЯ, возвращается значение "Красный".

ЕСЛИ значение строки 2 в столбце "Дата заказа" больше СЕГОДНЯ, возвращается значение "Жёлтый".

ЕСЛИ значение строки 2 в столбце "Дата заказа" равняется СЕГОДНЯ, возвращается значение "Зелёный".

Красный

=IF([Дата заказа]3 TODAY(), "Красный", IF(AND[Дата заказа]3 >= TODAY(), ([Дата заказа]3 TODAY(+7))? "Жёлтый", "Зелёный"))

ЕСЛИ значение строки 3 в столбце "Дата заказа" меньше СЕГОДНЯ, возвращается значение "Красный".

ЕСЛИ значение строки 2 в столбце "Дата заказа" больше или равняется СЕГОДНЯ, И находится в диапазоне менее следующих 7 дней, возвращается значение "Жёлтый".

Если ни то, ни другое условие не применимы, возвращается значение "Зелёный".

Жёлтый

=IF(COUNTIF([Артикул]:[Артикул], [Артикул]@row) > 1, 1, 0)

Поиск дубликатов

ЕСЛИ в столбце "Артикул" имеется более одного вхождения артикула из текущей строки, в этой строке будет поставлен флажок.

Если дубликаты отсутствуют, флажок проставляться не будет. 

Нет отмеченных строк

Остались вопросы?

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

Изучить примеры того, как эту функцию применяют другие пользователи Smartsheet, или задать интересующий вас вопрос можно в Сообществе Smartsheet.

Обратиться к Сообществу