Функции ЕСЛИ() могут вкладываться друг в друга. Можно вложить друг в друга в качестве второго и третьего аргументов до 7 функций ЕСЛИ().
=ЕСЛИ(B3=25;"Отлично";ЕСЛИ(И(B3<25;B3>22);"Хорошо";ЕСЛИ(И(B3<=22;B3>19);"Удовлетворительно";"Неудовлетворительно")))
Выполняется функция следующим образом: если число, находящееся в ячейке В3, равно 25, то значением функции будет “ Отлично”; иначе – если число, находящееся в ячейке В3 меньше 25, но больше 22, то функция примет значение “ Хорошо”, иначе – если В3 меньше или равно 22 и больше 19, функция примет значение “Удовлетворительно ”, иначе “Неудовлетворительно ” (рис.16, 17, 18).
Рис.16
Рис.17
Рис.18
Следует иметь в виду, что вложенных функций ЕСЛИ() должно быть на единицу меньше, чем возможных вариантов принимаемых значений.
Иногда аргументы логических функций становятся громоздкими, если приходится проверять выполнение одного и того же условия элементами блоков ячеек, например:
=ЕСЛИ(И(А4>=B2;B4>=B2;C4>=B2;D4>=B2;E4>=B2;F4>=B2); “Да”; “Нет”) (рис. 19)
Условие можно записать короче, если в аргументе функции использовать блок ячеек:
=ЕСЛИ(И(А4:F4>=B2); “Да”; “Нет”) (рис. 20).
Рис. 19
Рис. 20
Рассмотрим примеры:
= ЕСЛИ(А6<0;15;25)
Если значение содержимого ячейки А6 будет меньше 0, то результат вычисления равен 15, в противном случае (т.е. если значение содержимого ячейки А6 >= 0) результат равен 25.
В аргументах функции можно использовать другие функции, например,
= ЕСЛИ(СУММ(D1:D6)>0; СУММ(D1:D6);0)
Результатом выполнения этой функции будет сумма значений содержимого ячеек D1:D10, если эта сумма положительная, и нулю в противном случае, то есть если эта сумма отрицательная или равна нулю (рис.21, 22).
Рис.21 Значение 5, если сумма положительна
Рис.22 Значение 0, если сумма отрицательна
Аргументами функции, а также результатом выполнения функции могут быть текстовые константы.
Например,
== ЕСЛИ(В5>100; “Принять”;”Отказать”)
Если содержимое ячейки больше 100, то результатом выполнения функции будет значение “Принять”, в противном случае - ”Отказать” (рис.23, 24).
Рис.23 Результат «Принять», если число больше 100
Рис.24 Результат «Отказать», если число меньше 100
Текстовые значения могут быть и в логическом выражении:
= ЕСЛИ(В10=”отлично”;”100%”;”70%”)
Рассмотрим примеры:
= ЕСЛИ(И(А3>0; B3>0); “Решение есть”; “Решения нет”))
= ЕСЛИ(ИЛИ(А3<0; B3<0); “Решения нет”; “Решение есть”))
В первом случае: если и содержимое ячейки А3>0, и содержимое ячейки B3>0, результатом будет “Решение есть”, если содержимое, хотя бы одной из ячеек (А3 или В3) <=0, результатом будет - “Решения нет” (рис. 25, 26, 27).
Рис.25
Рис.26
Рис.27
Примечание. Формулу можно сделать короче, если вместо текстовых констант ввести ссылки на них (рис.28).
Рис.28
Во втором случае: если или содержимое ячейки А3<0, или содержимое ячейки B3<0, результатом будет “Решения нет”, в противном случае Решение есть (рис.29, 30, 31).
Рис.29
Рис.30
Рис.31
Часто вместо функций И, ИЛИ нагляднее использовать операторы умножения и сложения. Например, рассматриваемые формулы можно записать:
= ЕСЛИ(А3>0*B3>0; “Решение есть”; “Решения нет”)) (рис.32)
= ЕСЛИ((А3<0)+(B3<0); “Решения нет”; “Решение есть”)) (рис.33).
Рис.32 Использование логического умножения
Рис.33 Использование логического сложения
Следует иметь в виду, что вложенных функций ЕСЛИ() должно быть на единицу меньше, чем возможных вариантов принимаемых значений.
Иногда аргументы логических функций становятся громоздкими, если приходится проверять выполнение одного и того же условия элементами блоков ячеек, например:
=ЕСЛИ(И(А4>=B2;B4>=B2;C4>=B2;D4>=B2;E4>=B2;F4>=B2); “Да”; “Нет”) (рис. 34)
Условие можно записать короче, если в аргументе функции использовать блок ячеек:
=ЕСЛИ(И(А4:F4>=B2); “Да”; “Нет”) (рис. 35).
Рис.34 Использование развернутой проверки условия
Рис.35 Использование блока ячеек для проверки условия