=ЕСЛИМН(B2>=90;"A";B2>=80;"B";B2>=70;"C";ИСТИНА;"F") проверяет условия от первого к последнему и возвращает значение, парное первому, которое даёт ИСТИНА. Функция ЕСЛИМН (по-английски IFS) делает то же, что вложенная ЕСЛИ, но без вкладывания одной ЕСЛИ в другую. Ей нужен Excel 2019 или новее либо Microsoft 365. Таблицы на этой странице показывают английскую запись, но формулы в них можно вводить и по-русски, с точкой с запятой.
| A | B | C | |
|---|---|---|---|
| 1 | Student | Score | Grade |
| 2 | Ana | 94 | A |
| 3 | Ben | 81 | B |
| 4 | Chloe | 70 | C |
| 5 | Dan | 65 | F |
| 6 | Eve | 88 | B |
| 7 | Finn | 90 | A |
=ЕСЛИМН(B2>=90;"A";B2>=80;"B";B2>=70;"C";ИСТИНА;"F")Щёлкните C2: четыре пары из проверки и результата и одна закрывающая скобка. Замените балл Chloe в B4 на 69, и её оценка упадёт до F.
Синтаксис ЕСЛИМН
=IFS(logical_test1, value_if_true1, [logical_test2, value_if_true2], ...)
- Аргументы идут парами: проверка, которая даёт ИСТИНА или ЛОЖЬ, затем значение, которое нужно вернуть, если она истинна.
- Excel проверяет условия по порядку и возвращает значение первого истинного. Следующие проверки не выполняются, поэтому с проверками
>=ставьте самый высокий порог первым. - Пар может быть до 127.
- Отдельного аргумента «иначе» нет. Эту роль играет последняя пара с
ИСТИНАв качестве проверки.
Проверка без значения (нечётное число аргументов) заставляет Excel отклонить формулу с сообщением «You've entered too few arguments for this function» (для этой функции введено слишком мало аргументов).
ИСТИНА как значение по умолчанию и #Н/Д, когда ничего не подошло
Если ни одна проверка не истинна, ЕСЛИМН возвращает #Н/Д (по-английски #N/A; таблицы на этой странице показывают ошибки под английскими именами). У столбца C ниже нет значения по умолчанию, и на двух низких баллах он выдаёт ошибку; столбец D заканчивается на TRUE,"F" и перехватывает их:
| A | B | C | D | |
|---|---|---|---|---|
| 1 | Student | Score | No default | TRUE default |
| 2 | Ana | 94 | A | A |
| 3 | Ben | 81 | B | B |
| 4 | Dan | 65 | #N/A | F |
| 5 | Eve | 88 | B | B |
| 6 | Gus | 52 | #N/A | F |
#N/A Искомого значения нет в диапазоне поиска.В русском Excel: =ЕСЛИМН(B4>=90;"A";B4>=80;"B";B4>=70;"C")ИСТИНА это проверка, которая истинна всегда, поэтому до неё дело доходит, только если все проверки перед ней дали ЛОЖЬ, и она должна быть последней парой: всё, что стоит после неё, никогда не проверяется. Значение по умолчанию может быть любым: ИСТИНА;"" для пустой ячейки, ИСТИНА;"Check", чтобы пометить строку. Если нужно спрятать #Н/Д без значения по умолчанию, подойдёт и =ЕСНД(ЕСЛИМН(...);"No grade"); ЕСНД (IFNA) объясняется на странице ЕСЛИОШИБКА.
ЕСЛИМН с текстом и с И или ИЛИ
Проверки это обычные логические выражения, поэтому они могут сравнивать текст и использовать И и ИЛИ. Здесь способ доставки зависит от региона и суммы заказа:
| A | B | C | D | |
|---|---|---|---|---|
| 1 | Order | Region | Total | Delivery |
| 2 | 1001 | North | $120 | Free |
| 3 | 1002 | North | $60 | Standard |
| 4 | 1003 | South | $150 | Express |
| 5 | 1004 | East | $40 | Post |
| 6 | 1005 | north | $300 | Free |
=ЕСЛИМН(И(B2="North";C2>=100);"Free";B2="North";"Standard";C2>=100;"Express";ИСТИНА;"Post")Заказ 1001 из North и больше 100, поэтому получает Free. Заказ 1002 из North, но меньше 100, так что первая проверка не проходит, а вторая, B2="North", даёт Standard. Сравнение текста не учитывает регистр, поэтому 1005, где написано north, тоже получает Free.
Когда каждая проверка сравнивает одну и ту же ячейку с фиксированным значением (B2="N", B2="S", B2="E"), ПЕРЕКЛЮЧ (SWITCH) называет каждое значение один раз и получается короче: =ПЕРЕКЛЮЧ(B2;"N";"North";"S";"South";"Other").
Практика: скорость доставки
| A | B | C | |
|---|---|---|---|
| 1 | Order | Days | Speed |
| 2 | 1001 | 3 | |
| 3 | 1002 | 1 | |
| 4 | 1003 | 7 | |
| 5 | 1004 | 2 | |
| 6 | 1005 | 5 |
Ваша очередь: В C2 верните "Express", когда дней в B2 1 или меньше, "Standard", когда их 3 или меньше, и "Slow" в остальных случаях. Используйте ЕСЛИМН. Формула протягивается вниз до C6.
ЕСЛИМН и вложенные ЕСЛИ
Две формулы ниже возвращают одинаковую оценку для любого балла:
=IF(B2>=90,"A",IF(B2>=80,"B",IF(B2>=70,"C","F")))
=IFS(B2>=90,"A",B2>=80,"B",B2>=70,"C",TRUE,"F")
| ЕСЛИМН | Вложенные ЕСЛИ | |
|---|---|---|
| Скобки | Одна пара | По паре на каждую ЕСЛИ |
| Значение по умолчанию | Последняя пара с ИСТИНА | value_if_false последней ЕСЛИ |
| Ни одна проверка не подошла | #Н/Д, если не добавить ИСТИНА | value_if_false последней ЕСЛИ (ЛОЖЬ, если его пропустить) |
| Предел | 127 пар | 64 вложенных ЕСЛИ |
| Excel 2016 и ранее | #ИМЯ? | Работает |
Выбирайте ЕСЛИМН, когда у всех, кто открывает файл, Excel 2019 или новее, и вложенные ЕСЛИ, когда файл уходит к человеку со старым Excel. Если исходов всего два, обычная ЕСЛИ проще обеих. Для множества числовых интервалов (налоговые ставки, вес посылки) ни одна из них не лучший инструмент: таблица поиска с приблизительным совпадением держит пороги в ячейках, как показано на странице вложенных ЕСЛИ.
Часто задаваемые вопросы
Как добавить значение «иначе» в ЕСЛИМН?
Сделайте последней проверкой ИСТИНА, она истинна всегда: =ЕСЛИМН(B2>=90;"A";B2>=80;"B";ИСТИНА;"F"). Любое значение, которое не подошло ни под одну из предыдущих проверок, получает F.
Почему ЕСЛИМН возвращает #Н/Д?
Ни одна проверка не дала ИСТИНА, а последней пары с ИСТИНА нет. =ЕСЛИМН(B2>=90;"A";B2>=80;"B") возвращает #Н/Д для балла 75. Добавьте в конец ИСТИНА;"F" или оберните формулу в ЕСНД.
В каких версиях Excel есть ЕСЛИМН?
В Excel 2019, Excel 2021, Excel 2024 и Microsoft 365, а также в Excel в браузере. В Excel 2016 и более ранних формула с ЕСЛИМН показывает #ИМЯ?, поэтому там используйте вложенные ЕСЛИ. В Google Таблицах ЕСЛИМН тоже есть.
ЕСЛИМН лучше вложенных ЕСЛИ?
Её проще читать, и у неё всего одна закрывающая скобка, но работает она так же: побеждает первая истинная проверка. Вложенные ЕСЛИ по-прежнему нужны, когда файл должен открываться в Excel 2016 или раньше.