Найти в Дзене
Мир таблиц

Функция ЕСЛИМН как альтернатива нескольким вложенным ЕСЛИ в Excel

Прошлый раз мы использовали вложенные друг в друга функции ЕСЛИ для проверки нескольких условий. Начиная с версии Excel 2016 Microsoft предложила в качестве альтернативы новую функцию: ЕСЛИМН.

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

Эта функция требует список условий и значение, которое должно быть возвращено, если условие выполнено. Она будет последовательно перебирать условия и вернет значение для первого значения, которое вернет ИСТИНА.

Синтаксис функции ЕСЛИМН следующий:

=ЕСЛИМН(логическая_проверка1; если_значение_истина1;
[логическая_проверка2], [если_значение_истина2])
  • Логическая проверка1: Первое условие для проверки. Это может быть что угодно, что может быть оценено как ИСТИНА или ЛОЖЬ.
  • Если значение истина1: Значение, которое возвращается, если результат первого условия равен ИСТИНА.
  • [Логическая проверка2]: Второе условие для проверки.
  • [Если значение истина2]: Значение, которое будет возвращено, если результат второго условия будет ИСТИНА.

Функция ЕСЛИМН может включать в себя до 127 различных условий. Но это безумие! Пожалуйста, не делайте так, есть намного более эффективные способы для множественной проверки условий. Мы ещё поговорим об этом позже, а сегодня пока потренируемся на ЕСЛИМН.

Возможно, вы заметили, что в ЕСЛИМН в отличие от ЕСЛИ нет аргумента если ложь. Давайте посмотрим как это повлияет на написание формулы.

Возьмем список абитуриентов с баллами за экзамен из прошлого примера. Допустим нам надо разбить их на группы, в зависимости от балла: 90 и больше баллов - группа А, от 80 до 90 - группа B, от 70 до 80 - группа C, 60-70 - группа D и меньше 60 баллов - группа E.

-2

Используем следующую формулу:

=ЕСЛИМН(B2>=90;"A";B2>=80;"B";B2>=70;"C";B2>=60;"D";B2<60;"E")

Последнее условие в функции ЕСЛИМН используется как аргумент иначе. Поскольку функция не имеет встроенного аргумента если ложь, то условие B2<60 было записано для возврата "E".

-3

Функция ЕСЛИМН возвращает значение для первого условия, которое возвращает ИСТИНА. Поэтому при её использовании очень важен порядок условий.

Давайте попробуем расположить условия в обратном порядке:

=ЕСЛИМН(B2<60;"E";B2>=60;"D";B2>=70;"C";B2>=80;"B";B2>=90;"A")

Результаты катастрофические:

-4

Большинство абитуриентов попало в группу D, потому что они получили баллов за экзамен >=60, а это первое условие, которое возвращает ИСТИНА.

Если проверяемое значение не соответствует ни одному из перечисленных критериев, то возвращается ошибка #Н/Д. Давайте вернем нашу первую формулу и внесем в нее изменение. Уберем проверку последнего условия <60 и возврата группы Е.

-5

Получается, там где 59 баллов, возвращается ошибка, потому что 59 не отвечает ни одному условию. Обработку ошибок мы рассмотрим чуть позже.

А как бы выглядела наша формула, если бы мы использовали вложенные функции ЕСЛИ?

=ЕСЛИ(B2>=90;"A";ЕСЛИ(B2>=80;"B";ЕСЛИ(B2>=70;"C";ЕСЛИ(B2>=60;"D";"E"))))

Как на ваш взгляд, функция ЕСЛИМН сильно упрощает формулу? Если честно, не намного. Конечно, для новичков её использование упрощает жизнь, позволяя не открывать и закрывать несколько вложенных ЕСЛИ.

-6

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

Лучшим способом обработки нескольких логических условий было бы использование функции ПЕРЕКЛЮЧ, но о ней мы поговорим позднее. А пока, ЕСЛИМН - это один из имеющих право на жизнь способов.

В следующих нескольких статьях мы познакомимся с представителями ещё одного типа логических функций: И, ИЛИ, ИСКЛИЛИ и НЕ.

Не переключайтесь;)