Функция если 2 условия. Как в excel при помощи вложенных функций если() рассчитать бонус с продаж

Распространенный вопрос по Excel «Как записывать несколько условий в одной формуле?». Особенно часто применяется два и более условий при использовании функции ЕСЛИ. Сделать несколько условий в формуле ЕСЛИ довольно просто, главное знать основные принципы. Их и обсуждаем ниже.

На мой взгляд, показательно рассмотреть пример с решением системы условий. Такие задания часто задают в институтах, на парах по Excel.

Например, есть вот такая, довольно нагроможденная формула:

Разберем на примере, как перенести ее в Excel

Понятно, что эта формула будет состоять из 3 частей, как минимум:

SIN(B1)^2 =COS(B1) =EXP(1/B1)

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

Ее состав следующий:

ЕСЛИ(Условие;если условие = ДА (ИСТИНА);если условие = НЕТ (ЛОЖЬ))

Т.е. если мы запишем простую формулу, что мы получим в итоге в ячейке B2?

Верно — отобразиться 100. Если же в А1 будет стоять любое другое значение кроме 1, то в B2 отобразится бы 0.

Вернемся к нашей системе условий. Теперь нам надо понимать как записать сразу два условия до первой точки с запятой. У нас в B1 пусто, а значит = 0, и только при выполнении обоих условий А1=1 и B1=0 (знак *) значение формулы будет равно 100.

Особо разберем * между скобками

Оператор И он же * означает, что должно выполняться оба условия одновременно, А1=1 и B1=0.

Если между скобками поставить + (или), то достаточно будет одного из условий. Например только если А1=1, то уже будет отображаться 100.

Мы готовы к написанию формулы, будем это делать по частям

Запишем первое условие

ЕСЛИ((B1>-2)*(B1<9);SIN(B1)^2);

Если условие выполняется, то выполняется первая формула с синусом
Если нет, второе условие

ЕСЛИ((B1>-2)*(B1<9);SIN(B1)^2;ЕСЛИ((B1>=9)*(B1<=19);COS(B1)

Во всех же остальных случаях будет выполнятся формула =EXP(1/B1)
Итого получается:

ЕСЛИ((B1>-2)*(B1<9);SIN(B1)^2;ЕСЛИ((B1>=9)*(B1<=19);COS(B1);EXP(1/B1)))

Запись нескольких формул в одной

Если в ячейки B1 будет текст, то формула выдаст ошибку. Поэтому я часто применяю формулу .

Представим что вся наша формула из предыдущего пункта это один условный аргумент А

Тогда =ЕСЛИОШИБКА(А;»»)

Или для нашего примера

ЕСЛИОШИБКА(ЕСЛИ((B1>-2)*(B1<9);SIN(B1)^2;ЕСЛИ((B1>=9)*(B1<=19);COS(B1);EXP(1/B1)));"")

Пример можно скачать

В статье речь пойдет о функции табличного редактора Excel «Если». Она связана с логическими возможностями приложения. Данную функцию можно отнести к наиболее распространенной, которая зачастую используется во время работы.


Ключевые возможности

В программе Excel формула «Если» позволяет различного рода задачи, которые требуют сравнить определенные значения и получить результат. Такое решение дает возможность использовать ветвящиеся алгоритмы, создавать дерево решений.

Примеры применения

Функция имеет вид: =ЕСЛИ (задача; истина; ложь). Первой составной частью является логическое выражение. Оно способно выступать в виде фразы или числа. Например, «10» или «без НДС». Такой параметр обязательно следует заполнить. Истина представляет собой значение, отображающееся в качестве результата, если выражение верно. Ложь представляет собой данные, которые будут выданы, когда задача неверна.

Равенство параметров двух ячеек

Чтобы лучше понять возможности функции «Если» в Excel, необходимо привести примеры. Поэтому дальше стоит приступить к их рассмотрению. Нужно ввести в клетку C1 значение 8. После этого в поле по адресу D1 необходимо вписать формулу вида: =ЕСЛИ(C1<10; 1; 2). В результате программа самостоятельно начинает сравнение параметров из клетки C1 со значением 10. Когда оно достигнет десяти, в поле по адресу D1 можно увидеть единица. В противном случае редактор отобразит 2.

Можно рассмотреть еще один пример. Существует несколько студентов и их отметки, которые заработаны за экзамен. Данные следующие: 5, 4, а также 3 и 2. По условию задания предусматривается создание для каждого из учащегося текстового комментария «сдал» или «не сдал». Таким образом, если студент получил отметку три и выше, считается, что он сдал экзамен. Если его оценка ниже 3, студент не справился с заланием. Для решения подобной задачи следует написать следующую формулу: =ЕСЛИ(C1<3; «не справился»; «сдал»).

Программа начинает сравнивать результаты каждого студента. Если показатель меньше трех, в соответствующей клетке появится надпись «не справился». Когда отметка 3 и выше, в требуемой графе можно увидеть комментарий о том, что студент не сдал экзамен. Стоит отметить, что текстовые комментарии следует всегда писать в кавычках. Во время использования данной функции можно применять следующие операторы сравнения: < >, =, >, <, >=, <=.

Примеры с использованием условий «ИЛИ», «И»

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

«ИЛИ»;
«И».

Необходимо указать важное условие в Excel: когда оценка студента равна или меньше 5, но больше 3. При этом следует отобразить комментарий: «проходит» или «нет». Таким образом, проходят только те студенты, которые заработали пятерки и четверки. Чтобы записать данную задачу в табличном редакторе следует применить специальную формулу. Она имеет следующий вид: =ЕСЛИ(И(A1<=5; A1>3); «проходит», «нет»).

Если рассмотреть более сложный пример, понадобится использовать «ИЛИ» либо «И». Таким образом, можно ознакомиться с применением формулы в Excel, если существует несколько условий в задании. Например: =ЕСЛИ(ИЛИ(A1=5; A1=10); 100; 0). В данном случае можно сделать вывод, когда значение в клетке А1 равно 5 или 10, программа отображает результат 100. В противном случае он составляет 0. Существует возможность применить эти операторы, чтобы найти решение более сложным задачам.

Например, в базе требуется вычислить должников, которым требуется заплатить более 10000 рублей. Можно задать условие, что заем не погашался более полугода, то есть шести месяцев. Благодаря функции табличного редактора Excel «Если» позволяется в автоматическом режиме получить около соответствующих имен отметку «проблемный клиент». Допустим, в клетке A1 размещены данные, которые указывают на срок задолженности (месяцы). Поле B1 содержит сумму.

В данном случае формула представлена в следующем виде: =ЕСЛИ(И(A1>=6; B1>10000); «проблемный клиент»; «»). Таким образом, если выявлен человек, соответствующий указанным условиям, программа отображает напротив его имени соответствующий комментарий. Для других участников списка эта клетка останется пустой.

Также можно ознакомиться с примером, когда ситуация является критической. Необходимо ввести соответствующий комментарий. Как результат, формула получится следующей: =ЕСЛИ(ИЛИ(A1>=6; B1>10000); «критическая ситуация»; «»). Однако если программа определяет совпадения по одному из параметров как минимум, отображается соответствующее примечание.

Сложные задачи

Функция Excel «Если» применяется для того, чтобы избежать встроенных ошибок при делении на ноль. Кроме того, она используется и в некоторых других ситуациях. Первый случай обозначается, как «ДЕЛ/0». Его можно встретить достаточно часто. Обычно это происходит тогда, когда формула «A/B» требует копирования. В это же время показатель B в отдельных ячейках составляет 0. Чтобы избежать подобной ситуации, стоит использовать возможности рассматриваемого оператора. Таким образом, требуемая формула имеет следующий вид: =ЕСЛИ(B1=0; 0; A1/B1). Итак, если клетка B1 заполнена значением «ноль», редактор отобразит «0». В противном случае программа поделит показатель A1 на данные B1 и выдаст требуемый результат.

Скидка

Как показывает практика, зачастую возникают ситуации, которые рассматриваются далее. Потребуется рассчитать скидки, учитывая общую сумму средств, затраченных на покупку конкретного товара. Матрица, которая используется, выглядит следующим образом: менее 1000 - 0%; 1001-3000 - 3%; 3001-5000 - 5%; более 5001 - 7%. Можно ознакомиться с ситуацией, когда в Excel имеется база данных посетителей и сведения о сумме, потраченной на покупку. Далее следует рассчитать скидку для каждого клиента. Для этого понадобится применить следующее выражение: =ЕСЛИ(A1>=5001; B1*0,93; ЕСЛИ(А1>=3001; B1*0,95;..).

Система выполняет проверку общей суммы покупок. Если она превышает значение в 5001 рублей, выполняется умножение на 93 процента цены товара. Если превышена отметка в 3001 единиц, происходит аналогичное действие, однако уже учитывается 95%.

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

Коротко о синтаксисе

Функция ЕСЛИ имеет всего три аргумента:

=ЕСЛИ(заданное_условие; значение_если_ИСТИНА; значение_если_ЛОЖЬ)

Первый аргумент – это условие, благодаря которому формула может принимать решения. Условие проверяется в самую первую очередь и способно вернуть всего два значения – ИСТИНА или ЛОЖЬ. Если условие истинно, то формула вернет второй аргумент, в противном случае третий.

О том, как задавать условия в Excel, читайте статьи: Как задать простое логическое условие в Excel и Используем логические функции Excel для задания сложных условий .

Пример 1

Обратимся к примеру, приведенному на рисунках ниже. В данном примере функция ЕСЛИ в первую очередь проверят условие A1>25 . Если это так, то формула возвратит текстовую строку “больше 25”, в любом другом случае – “меньше или равно 25”.

Пример 2

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

В столбец C нам необходимо выставить результат экзамена, который должен содержать всего два варианта: Сдал или Не сдал . Те, кто набрал более 45 баллов – сдали экзамен, остальные нет.


Функция ЕСЛИ и несколько условий

Функции ЕСЛИ можно вкладывать друг в друга, если необходимо расширить варианты принятия решений в Excel. Например, для рассмотренного ранее случая переаттестации сотрудников, требуется проставить не результат, а оценку из ряда: Отлично, Хорошо и Плохо. Оценка Отлично ставится при количестве баллов более 60, оценка Хорошо при более 45 и оценка Плохо в остальных случаях.


Как видите, вместо второго и третьего аргументов функции ЕСЛИ можно подставлять новые функции ЕСЛИ , тем самым расширяя число условий, которое формула может обработать. Таким образом, Вы можете создать нужное количество вложений. Правда есть очевидный недостаток такой конструкции, после 3-5 вложений формула станет нечитаемой и громоздкой, и с ней будет невозможно работать.

В Excel существуют более благородные инструменты для обработки большого количества условий, например, функция ВПР или ПРОСМОТР .

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

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

Для этого нужно выполнить следующие действия:

  1. Кликните на иконку вставки формул (Fx).
  2. В появившемся меню выберите пункт «ЕСЛИ».
  1. В результате этого вы увидите окно, в котором нужно указать аргументы функции:
    • логическое выражение;
    • значение, если истина;
    • значение, если ложь.
  2. После ввода значений в эти поля, правее их будет отображаться предварительный результат.
  3. Для вставки нажмите на кнопку «OK».

Примеры

Рассмотрим несколько различных логических выражений, чтобы вы поняли, как пользоваться этой функцией.

  1. Сделайте активной ячейку «А1».
  2. Повторите описанные выше действия по вызову окна вставки «Аргументов».
  3. Введите в поле условие следующий код.
C1=””

Смысл этого выражения в следующем: если ячейка C1 содержит пустоту. То есть в ней ничего не находится.

  1. В поле для истины вводим следующее.
”Ячейка C1 пустая”

Именно этот текст будет выводиться в случае выполнения этого условия.

  1. В поле «если ложь» вводим следующее.
”Ячейка C1 не пустая”

Данный текст мы увидим в случае ложного выполнения условия.

  1. Для вставки нашей формулы нажимаем на кнопку «OK».
  1. В результате этого мы увидим следующее (поскольку ячейка пустая, то и сообщение соответствующее).
  1. Введите любой текст в ячейку C.
  1. После нажатия на кнопку Enter вы увидите следующий результат.

Как видите, редактор Эксель выдал сообщение, которое мы указывали в случае ложного результата условия.

Операторы сравнения

Ниже вы видите список операторов сравнения:

Арифметические операторы

А это таблица арифметических операторов:

Более подробно об арифметических операторах и их приоритете в Экселе можно почитать в онлайн справке сайта Microsoft.

Несколько условий

Если хотите, то можете использовать большое количество логических выражений. Всё работает точно так же. Рассмотрим пример более сложного условия.

Составлять формулу будем через панель инструментов. Это намного удобнее, чем всё писать в одну строку, поскольку очень легко запутаться. Особенно в самом начале, когда вы только учитесь.

Для этого необходимо выполнить следующие действия.

  1. Перейдите на вкладку «Формулы». Кликните на кнопку «Вставить функцию».
  1. В результате этого всё содержимое ячейки автоматически подставится в «конструктор».
  1. Удалите всё, что находится в поле «Значение_если_ложь».
  1. Теперь в этой строке будет написано новое логическое выражение. То есть у нас будет новое вложенное условие. Для начала введите условие «Если значение ячейки С1 больше 1000». Для этого вводим следующий код. Обязательно в конце поставьте символ точки с запятой.
ЕСЛИ(C1>1000;

Очень внимательно следите за текущей раскладкой клавиатуры. Многие ошибаются и вводят русскую букву С вместо английской C. Визуально вы разницу не увидите, но для редактора это очень важно. В таком случае ничего работать не будет.

  1. Теперь добавим сообщение, которое будет выводиться, если число в ячейке C1 больше 1000.

Все текстовые значения обязательно вводим в кавычках.

  1. Теперь точно таким же образом вводим значение при невыполнении данного условия.
  1. В конце нажмите на кнопку «OK».
  1. В результате этого, мы видим сообщение о том, что введенное число больше 1000.
  1. Удалите содержимое ячейки C. Результатом станет следующее.

Мы проверили все три возможных результата. Всё прекрасно работает.

Копирование функции в таблицах

Иногда бывает так, что введенное логическое выражение необходимо продублировать на несколько строк. В некоторых случаях дублировать приходится очень много. Такая автоматизация намного удобнее, чем ручная проверка.

Рассмотрим пример копирования на таблице премий для сотрудников на праздники. Для этого нужно сделать следующие шаги.

  1. Создайте соответствующую таблицу.
  1. Кликните на пустую ячейку в первой строке и выберите «Fx» в поле ввода.
  1. В появившемся окне выберите функцию «ЕСЛИ» и нажмите на кнопку «OK».
  1. В первом поле введите следующее условие.
C6=”М”

Таким образом мы проверяем, является ли данный сотрудник мужчиной.

  1. В случае истины вводим какое-нибудь число. Например, 3000. В случае ложного выполнения условия вводим 0. Это значит, что девушкам премию давать не нужно. Для вставки нажмите на кнопку «OK».
  1. Далее наведите курсор на правый нижний угол ячейки. После того как курсор изменит свой внешний вид на «черный плюс», не отпуская пальца, потяните его до самой последней строчки.
  1. Результатом будет следующее.
  1. Теперь полностью скопируйте всю таблицу (при помощи сочетания клавиш Ctrl +C и Ctrl +V ). Измените заголовок на 8 марта.
  1. Перейдите на первую ячейку. Кликните на поле ввода формулы.
  1. Измените букву «М» на «Ж».
  1. Теперь так же продублируйте функцию до самого низа.
  1. Результатом будет следующее.

Здесь мы видим, что получилась полная противоположность. Это означает, что всё работает правильно.

Использование дополнительных операторов

Кроме арифметических выражений и сравнений, также можно использовать операторы «И» и «ИЛИ». Рассмотрим их более внимательно, поскольку благодаря им возможности функции «ЕСЛИ» значительно расширяются.

Первым делом создайте таблицу, в которой будет несколько полей, по которым можно будет сравнивать строки. В нашем случае при помощи поля «Статус сотрудника» мы будем проверять, кому нужно выплатить деньги, а кому – нет.

Оператор И

Будем использовать старую функцию, в которой мы проверяли, является ли сотрудник мужчиной. Теперь нужно сделать следующие изменения.

  1. Добавьте в условие скобку и рядом букву «И».
  2. Старое условие будет первым, а второе – после точки с запятой.
=ЕСЛИ(И(C35="М";D35="Основной штат");3000;0)
  1. Продублируйте эту формулу до самого низа.
  1. В результате этого мы видим, что те сотрудники, которые не относятся к основному штату, будут лишены премии на праздники. Даже несмотря на то, что они мужчины.

Оператор Или

Того же самого эффекта можно добиться и при помощи оператора «ИЛИ».

Для этого в формулу внесите следующие изменения:

  1. Поменяйте букву «Ж» на «М».
  2. Статус сотрудника измените на «Совместителя».
  3. В поле истины поставьте 0, а для ложного события – 3000. Мы меняем их местами.
  1. Продублируем формулу до самой последней строки.
  1. Результат оказался точно таким же. Дело в том, что операторы «И» или «ИЛИ» являются полной противоположностью друг друга. Поэтому очень важно правильно указывать значения в поля для истины и лжи. Не ошибитесь.
  1. Для проверки можете изменить статус одного сотрудника на «Основной штат».
  2. Сразу после этого вы увидите, что напротив его фамилии появится число 3000.

Функция СУММЕСЛИ

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

Например, возьмем таблицу, в которой указаны различные товары, их стоимость, количество и статус. Посчитать общую сумму несложно. Но как узнать количество проданных продуктов?


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

>= Больше или равно

Результатом логического выражения является логическое значение ИСТИНА (1) или логическое значение ЛОЖЬ (0).

Функция ЕСЛИ

Функция ЕСЛИ (IF) имеет следующий синтаксис:


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


Следующая формула возвращает значение 10, если значение в ячейке А1 больше 3, а в противном случае - 20:


ЕСЛИ(А1>3;10;20)


В качестве аргументов функции ЕСЛИ можно использовать другие функции. В функции ЕСЛИ можно использовать текстовые аргументы. Например:


ЕСЛИ(А1>=4;"Зачет сдал";"Зачет не сдал")


Можно использовать текстовые аргументы в функции ЕСЛИ, чтобы при невыполнении условия она возвращала пустую строку вместо 0.

Например:


ЕСЛИ(СУММ(А1:А3)=30;А10;"")


Аргумент логическое_выражение функции ЕСЛИ может содержать текстовое значение. Например:


ЕСЛИ(А1="Динамо";10;290)


Эта формула возвращает значение 10, если ячейка А1 содержит строку "Динамо", и 290, если в ней находится любое другое значение. Совпадение между сравниваемыми текстовыми значениями должно быть точным, но без учета регистра.

Функции И, ИЛИ, НЕ

Функции И (AND), ИЛИ (OR), НЕ (NOT) - позволяют создавать сложные логические выражения. Эти функции работают в сочетании с простыми операторами сравнения. Функции И и ИЛИ могут иметь до 30 логических аргументов и имеют синтаксис:


=И(логическое_значение1;логическое_значение2...)
=ИЛИ(логическое_значение1;логическое_значение2...)


Функция НЕ имеет только один аргумент и следующий синтаксис:


=НЕ(логическое_значение)


Аргументы функций И, ИЛИ, НЕ могут быть логическими выражениями, массивами или ссылками на ячейки, содержащие логические значения.

Приведем пример. Пусть Excel возвращает текст "Прошел", если ученик имеет средний балл более 4 (ячейка А2), и пропуск занятий меньше 3 (ячейка А3). Формула примет вид:


=ЕСЛИ(И(А2>4;А3


Не смотря на то, что функция ИЛИ имеет те же аргументы, что и И, результаты получаются совершенно различными. Так, если в предыдущей формуле заменить функцию И на ИЛИ, то ученик будет проходить, если выполняется хотя бы одно из условий (средний балл более 4 или пропуски занятий менее 3). Таким образом, функция ИЛИ возвращает логическое значение ИСТИНА, если хотя бы одно из логических выражений истинно, а функция И возвращает логическое значение ИСТИНА, только если все логические выражения истинны.

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

Вложенные функции ЕСЛИ

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


=ЕСЛИ(А1=100;"Всегда";ЕСЛИ(И(А1>=80;А1 =60;А1


Если значение в ячейке А1 является целым числом, формула читается следующим образом: "Если значение в ячейке А1 равно 100, возвратить строку "Всегда". В противном случае, если значение в ячейке А1 находится между 80 и 100, возвратить "Обычно". В противном случае, если значение в ячейке А1 находится между 60 и 80, возвратить строку "Иногда". И, если ни одно из этих условий не выполняется, возвратить строку "Никогда". Всего допускается до 7 уровней вложения функций ЕСЛИ.

Функции ИСТИНА и ЛОЖЬ

Функции ИСТИНА (TRUE) и ЛОЖЬ (FALSE) предоставляют альтернативный способ записи логических значений ИСТИНА и ЛОЖЬ. Эти функции не имеют аргументов и выглядят следующим образом:


=ИСТИНА()
=ЛОЖЬ()


Например, ячейка А1 содержит логическое выражение. Тогда следующая функция возвратить значение "Проходите", если выражение в ячейке А1 имеет значение ИСТИНА:


ЕСЛИ(А1=ИСТИНА();"Проходите";"Стоп")


В противном случае формула возвратит "Стоп".

Функция ЕПУСТО

Если нужно определить, является ли ячейка пустой, можно использовать функцию ЕПУСТО (ISBLANK), которая имеет следующий синтаксис:


=ЕПУСТО(значение)