Глиф Учебники

Урок 5. Условия: ЕСЛИ, И, ИЛИ, ЕСЛИОШИБКА

Курс «Excel» · урок 5 из 10 · 4 минуты чтения

До сих пор формулы считали всегда одинаково. Но часто ответ зависит от условия: «если сумма больше 100 — доставка бесплатная», «если балл ниже 4 — незачёт». Для этого есть функция ЕСЛИ и её помощники.

Сравнения

Условие — это сравнение, его результат — ИСТИНА или ЛОЖЬ. Введите в ячейку =5>3 — Excel ответит ИСТИНА.

ЗнакЗначитПримерРезультат
=равно=2=3ЛОЖЬ
<>не равно=2<>3ИСТИНА
>больше=5>3ИСТИНА
<меньше=5<3ЛОЖЬ
>=больше или равно=4>=4ИСТИНА
<=меньше или равно=7<=4ЛОЖЬ

Текст сравнивается без учёта регистра: ="Минск"="минск" даёт ИСТИНА.

Функция ЕСЛИ

Формула
=ЕСЛИ(лог_выражение;значение_если_истина;значение_если_ложь)

Три аргумента: условие, что вернуть, если оно выполнено, и что — если нет. Пусть зачёт ставится от 4 баллов:

ABC
1УченикБаллПропуски
2Иванов72
3Петрова30
4Сидоров96
5Козлова51

В D2 и вниз по столбцу:

Формула
=ЕСЛИ(B2>=4;"зачёт";"незачёт")
ABD
2Иванов7зачёт
3Петрова3незачёт
4Сидоров9зачёт
5Козлова5зачёт
=ЕСЛИ(B2>=4;"зачёт";"незачёт") условие B2>=4 балл не ниже 4? ИСТИНА зачёт Иванов — 7 Сидоров — 9 Козлова — 5 ЛОЖЬ незачёт Петрова — 3
ЕСЛИ проверяет условие B2>=4: при ИСТИНЕ возвращает второй аргумент «зачёт» (Иванов, Сидоров, Козлова), при ЛЖИ — третий, «незачёт» (Петрова).

Текст в формуле пишется в кавычках, числа и ссылки — без них. Ответом может быть не только текст, но и число или формула: =ЕСЛИ(C2>100;C2*0,9;C2) — скидка 10 % на суммы больше 100.

Пустой ответ. Две кавычки подряд "" — пустой текст. =ЕСЛИ(B2<4;"пересдача";"") пишет «пересдача» только у тех, кому нужно, а у остальных ячейка выглядит пустой.

Несколько условий: И, ИЛИ

И возвращает ИСТИНА, только если выполнены все условия, ИЛИ — если выполнено хотя бы одно. Сами по себе они дают ИСТИНА или ЛОЖЬ, поэтому их ставят внутрь ЕСЛИ.

К экзамену допускают, если балл не ниже 4 и пропусков не больше 5:

Формула
=ЕСЛИ(И(B2>=4;C2<=5);"допущен";"не допущен")

С учеником нужна беседа, если балл ниже 4 или пропусков больше 5:

Формула
=ЕСЛИ(ИЛИ(B2<4;C2>5);"беседа";"")
УченикБаллПропускиДопуск (И)Беседа (ИЛИ)
Иванов72допущен
Петрова30не допущенбеседа
Сидоров96не допущенбеседа
Козлова51допущен

Сидоров не допущен при отличном балле: второе условие И (пропусков не больше 5) не выполнено. Функция НЕ переворачивает результат: =НЕ(B2>=4) — то же, что =B2<4.

Сидоров: балл B2 = 9, пропусков C2 = 6 И — нужны все условия ИЛИ — хватит одного B2>=4C2<=5 B2<4C2>5 ИСТИНАЛОЖЬ ЛОЖЬИСТИНА ЛОЖЬ «не допущен» ИСТИНА «беседа»
У Сидорова балл 9 и 6 пропусков: для И одно из двух условий ложно, поэтому И даёт ЛОЖЬ и «не допущен»; для ИЛИ одного истинного условия хватает — ИСТИНА и «беседа».

Вложенные ЕСЛИ и ЕСЛИМН

Когда вариантов больше двух, на место «иначе» ставят ещё одну ЕСЛИ. Условная шкала: от 9 — «отлично», от 6 — «хорошо», от 4 — «удовлетворительно», ниже — «неудовлетворительно»:

Формула
=ЕСЛИ(B2>=9;"отлично";ЕСЛИ(B2>=6;"хорошо";ЕСЛИ(B2>=4;"удовлетворительно";"неудовлетворительно")))
УченикБаллОценка
Иванов7хорошо
Петрова3неудовлетворительно
Сидоров9отлично
Козлова5удовлетворительно

Excel проверяет условия по порядку и останавливается на первом выполненном, поэтому начинать надо с самого строгого (>=9). Если поставить первым B2>=4, все от 4 до 10 получат «удовлетворительно».

B2 = 7 B2>=9 ЛОЖЬ нет B2>=6 ИСТИНА да хорошо да отлично нет B2>=4 не проверяется да удовлетворительно нет иначе все остальные неудовлетворительно
При балле 7 условие B2>=9 ложно, B2>=6 истинно — формула возвращает «хорошо», и следующие условия уже не проверяются.

В Excel 2019, 2021 и Microsoft 365 то же короче пишется функцией ЕСЛИМН — пары «условие; ответ», а последнее условие ИСТИНА значит «во всех остальных случаях»:

Формула
=ЕСЛИМН(B2>=9;"отлично";B2>=6;"хорошо";B2>=4;"удовлетворительно";ИСТИНА;"неудовлетворительно")

Считайте скобки: у каждой ЕСЛИ своя пара, и в конце вложенной формулы их столько, сколько функций. Excel раскрашивает пары скобок разными цветами — это помогает.

ЕСЛИОШИБКА: вместо ошибки — свой ответ

Некоторые расчёты дают ошибку: деление на ноль, ненайденное значение. Средний чек — выручка, делённая на число покупателей; во вторник магазин не работал:

ABCD
1ДеньВыручкаПокупателейСредний чек
2Пн5404512
3Вт00#ДЕЛ/0!
4Ср6304215

В D3 формула =B3/C3 дала ошибку деления на ноль. Обернём деление:

Формула
=ЕСЛИОШИБКА(B2/C2;"нет продаж")

Теперь в D3 — «нет продаж», в остальных строках — обычный результат. Первый аргумент — формула, второй — что показать, если она вернула любую ошибку.

ЕСЛИОШИБКА прячет все ошибки, в том числе настоящие: опечатку в имени листа, удалённую ячейку, неверный диапазон. Оборачивайте формулу только тогда, когда она уже проверена и ошибка в ней ожидаема.

Частые ошибки

Коротко

Проверьте себя

1. Что вернёт =ЕСЛИ(A1>10;"много";"мало"), если в A1 число 10?
2. В A1 — 5, в B1 — 0. Что вернёт =И(A1>3;B1>3)?
3. Формула =ЕСЛИ(B2>=4;"удовл.";ЕСЛИ(B2>=9;"отлично";"неуд.")). Что она покажет для балла 10?
4. Когда стоит оборачивать формулу в ЕСЛИОШИБКА?