В Excel функция IF позволяет выполнить логическое сравнение между значением и ожидаемым значением, проверив условие и возвращая результат, если это условие имеет значение True или False.
-
=ЕСЛИ(это истинно, то сделать это, в противном случае сделать что-то еще)
Но что делать, если необходимо протестировать несколько условий, где, скажем, все условия должны иметь значение True или False (AND), или только одно условие должно быть True или False (OR), или если вы хотите проверка, если условие НЕ соответствует вашим критериям? Все 3 функции можно использовать самостоятельно, но гораздо чаще они связаны с функциями IF.
Используйте функцию ЕСЛИ вместе с функциями И, ИЛИ и НЕ, чтобы оценивать несколько условий.
Синтаксис
-
ЕСЛИ(И()): ЕСЛИ(И(лог_выражение1; [лог_выражение2]; …), значение_если_истина; [значение_если_ложь]))
-
ЕСЛИ(ИЛИ()): ЕСЛИ(ИЛИ(лог_выражение1; [лог_выражение2]; …), значение_если_истина; [значение_если_ложь]))
-
ЕСЛИ(НЕ()): ЕСЛИ(НЕ(лог_выражение1), значение_если_истина; [значение_если_ложь]))
|
Имя аргумента |
Описание |
|
|
лог_выражение (обязательно) |
Условие, которое нужно проверить. |
|
|
значение_если_истина (обязательно) |
Значение, которое должно возвращаться, если лог_выражение имеет значение ИСТИНА. |
|
|
значение_если_ложь (необязательно) |
Значение, которое должно возвращаться, если лог_выражение имеет значение ЛОЖЬ. |
|
Общие сведения об использовании этих функций по отдельности см. в следующих статьях: И, ИЛИ, НЕ. При сочетании с оператором ЕСЛИ они расшифровываются следующим образом:
-
И: =ЕСЛИ(И(условие; другое условие); значение, если ИСТИНА; значение, если ЛОЖЬ)
-
ИЛИ: =ЕСЛИ(ИЛИ(условие; другое условие); значение, если ИСТИНА; значение, если ЛОЖЬ)
-
НЕ: =ЕСЛИ(НЕ(условие); значение, если ИСТИНА; значение, если ЛОЖЬ)
Примеры
Ниже приведены примеры некоторых распространенных вложенных операторов IF(AND()), IF(OR()) и IF(NOT()) в Excel. Функции AND и OR могут поддерживать до 255 отдельных условий, но не рекомендуется использовать больше, чем несколько, так как сложные вложенные формулы могут быть очень трудными для сборки, тестирования и обслуживания. У функции НЕ может быть только одно условие.
Ниже приведены формулы с расшифровкой их логики.
|
Формула |
Описание |
|---|---|
|
=ЕСЛИ(И(A2>0;B2<100);ИСТИНА; ЛОЖЬ) |
Если A2 (25) больше нуля и B2 (75) меньше 100, возвращается значение ИСТИНА, в противном случае возвращается значение ЛОЖЬ. В этом случае оба условия имеют значение ИСТИНА, поэтому функция возвращает значение ИСТИНА. |
|
=ЕСЛИ(И(A3="красный";B3="зеленый");ИСТИНА;ЛОЖЬ) |
Если A3 ("Blue") = "Red", AND B3 ("Green") равно "Зеленый", то возвращает значение TRUE, в противном случае — FALSE. В этом случае только одно условие имеет значение ИСТИНА, поэтому возвращается значение ЛОЖЬ. |
|
=ЕСЛИ(ИЛИ(A4>0;B4<50);ИСТИНА; ЛОЖЬ) |
Если A4 (25) больше нуля или B4 (75) меньше 50, возвращается значение ИСТИНА, в противном случае возвращается значение ЛОЖЬ. В этом случае только первое условие имеет значение ИСТИНА, но поскольку для ИЛИ требуется, чтобы только один аргумент был истинным, формула возвращает значение ИСТИНА. |
|
=ЕСЛИ(ИЛИ(A5="красный";B5="зеленый");ИСТИНА;ЛОЖЬ) |
Если значение A5 ("Синий") равно "Красному", OR B5 ("Зеленый") равно "Зеленый", то возвращает значение TRUE, в противном случае возвращает значение FALSE. В этом случае второй аргумент имеет значение ИСТИНА, поэтому формула возвращает значение ИСТИНА. |
|
=ЕСЛИ(НЕ(A6>50);ИСТИНА;ЛОЖЬ) |
Если A6 (25) НЕ больше 50, возвращается значение ИСТИНА, в противном случае возвращается значение ЛОЖЬ. В этом случае значение не больше чем 50, поэтому формула возвращает значение ИСТИНА. |
|
=ЕСЛИ(НЕ(A7="красный");ИСТИНА;ЛОЖЬ) |
Если значение A7 ("Синий") не равно "Red", возвращается значение TRUE, в противном случае возвращается значение FALSE. |
Обратите внимание, что во всех примерах есть закрывающая скобка после условий. Аргументы ИСТИНА и ЛОЖЬ относятся ко внешнему оператору ЕСЛИ. Кроме того, вы можете использовать текстовые или числовые значения вместо значений ИСТИНА и ЛОЖЬ, которые возвращаются в примерах.
Вот несколько примеров использования операторов И, ИЛИ и НЕ для оценки дат.
Ниже приведены формулы с расшифровкой их логики.
|
Формула |
Описание |
|---|---|
|
=ЕСЛИ(A2>B2;ИСТИНА;ЛОЖЬ) |
Если A2 больше B2, возвращается значение ИСТИНА, в противном случае возвращается значение ЛОЖЬ. В этом случае 12.03.14 больше чем 01.01.14, поэтому формула возвращает значение ИСТИНА. |
|
=ЕСЛИ(И(A3>B2;A3<C2);ИСТИНА;ЛОЖЬ) |
Если A3 больше B2 И меньше C2, возвращается значение ИСТИНА, в противном случае возвращается значение ЛОЖЬ. В этом случае оба аргумента истинны, поэтому формула возвращает значение ИСТИНА. |
|
=ЕСЛИ(ИЛИ(A4>B2;A4<B2+60);ИСТИНА;ЛОЖЬ) |
Если A4 больше B2 ИЛИ меньше B2+60, возвращается значение ИСТИНА, в противном случае возвращается значение ЛОЖЬ. В этом случае первый аргумент равен ИСТИНА, а второй — ЛОЖЬ. Так как для оператора ИЛИ требуется, чтобы один из аргументов был истинным, формула возвращает значение ИСТИНА. Если вы используете мастер вычисления формул на вкладке "Формулы", вы увидите, как Excel вычисляет формулу. |
|
=ЕСЛИ(НЕ(A5>B2);ИСТИНА;ЛОЖЬ) |
Если A5 не больше B2, возвращается значение ИСТИНА, в противном случае возвращается значение ЛОЖЬ. В этом случае A5 больше B2, поэтому формула возвращает значение ЛОЖЬ. |
Использование И, ИЛИ и NOT с условным форматированием в Excel
В Excel можно также использовать and, OR и NOT, чтобы задать условия условного форматирования с помощью параметра формулы. При этом вы можете опустить функцию ЕСЛИ.
В Excel на вкладке Главная щелкните Условное форматирование > Новое правило. Затем выберите параметр "Использовать формулу для определения ячеек для форматирования", введите формулу и примените нужный формат.
Вот как будут выглядеть формулы для примеров с датами:
|
Формула |
Описание |
|---|---|
|
=A2>B2 |
Если A2 больше B2, отформатировать ячейку, в противном случае не выполнять никаких действий. |
|
=И(A3>B2;A3<C2) |
Если A3 больше B2 И меньше C2, отформатировать ячейку, в противном случае не выполнять никаких действий. |
|
=ИЛИ(A4>B2;A4<B2+60) |
Если A4 больше B2 ИЛИ меньше B2 + 60, отформатировать ячейку, в противном случае не выполнять никаких действий. |
|
=НЕ(A5>B2) |
Если A5 НЕ больше B2, отформатировать ячейку, в противном случае не выполнять никаких действий. В этом случае A5 больше B2, поэтому формула возвращает значение ЛОЖЬ. Если изменить формулу на =НЕ(B2>A5), она вернет значение ИСТИНА, а ячейка будет отформатирована. |
Примечание: Распространенной ошибкой является ввод формулы в условное форматирование без знака равенства (=). В этом случае вы увидите, что в диалоговом окне Условное форматирование в формулу будут добавлены знак равенства и кавычки : ="OR(A4>B2,A4<B2+60)", поэтому вам потребуется удалить кавычки, прежде чем формула ответит должным образом.
Дополнительные сведения
Вы всегда можете задать вопрос эксперту в Excel Tech Community или получить поддержку в сообществах.
См. также
Узнайте, как использовать вложенные функции в формуле
Полные сведения о формулах в Excel
Рекомендации, позволяющие избежать появления неработающих формул