Оглавление
В учебнике показано, как использовать IF вместе с функцией AND в Excel для проверки нескольких условий в одной формуле.
Некоторые вещи в мире конечны, другие бесконечны, и функция IF, похоже, одна из таких вещей. На нашем блоге мы уже собрали несколько уроков по IF в Excel и каждый день открываем для себя новые способы применения. Сегодня мы рассмотрим, как можно использовать IF вместе с функцией AND для одновременной оценки двух или более условий.
Оператор IF AND в Excel
Чтобы построить оператор IF AND, вам, очевидно, нужно объединить функции IF и AND в одну формулу. Вот как это сделать:
ЕСЛИ(И( условие1 , условие2 ,...), value_if_true, value_if_false)В переводе на простой английский язык формула звучит так: ЕСЛИ условие 1 истинно И условие 2 истинно, сделайте одно, иначе сделайте что-то другое.
В качестве примера создадим формулу, которая проверяет, является ли B2 "доставленным", а C2 не пустым, и в зависимости от результата делает одно из следующих действий:
- Если оба условия ИСТИНА, пометьте заказ как "Закрыт".
- Если одно из условий FALSE или оба FALSE, то возвращается пустая строка ("").
=IF(AND(B2="поставлено", C2""), "Закрыто", "")
На скриншоте ниже показана функция IF AND в Excel:
Если вы хотите вернуть какое-то значение в случае, если логический тест выдает значение FALSE, введите это значение в поле значение_если_ложно аргумент. Например:
=IF(AND(B2="поставлено", C2""), "Закрыто", "Открыто")
Модифицированная формула выводит "Закрыто", если в столбце B стоит "Доставлено", а в столбце C есть любая дата (не пустая). Во всех остальных случаях она выводит "Открыто":
Примечание. При использовании формулы ЕСЛИ И в Excel для оценки текстовых условий следует помнить, что строчные и прописные буквы рассматриваются как один и тот же символ. Если вам нужна формула ЕСЛИ И с учетом регистра, оберните один или несколько аргументов И в функцию EXACT, как это сделано в приведенном примере.
Теперь, когда вы знаете синтаксис оператора Excel IF AND, позвольте мне показать вам, какие задачи он может решать.
Excel ЕСЛИ: больше чем И меньше чем
В предыдущем примере мы проверяли два условия в двух разных ячейках. Но иногда вам может понадобиться выполнить два или более тестов в одной ячейке. Типичным примером является проверка того, является ли значение ячейки между двумя числами . Функция Excel IF AND может легко сделать это тоже!
Допустим, у вас есть цифры продаж в столбце B, и вам нужно отметить суммы больше $50, но меньше $100. Чтобы сделать это, вставьте эту формулу в C2, а затем скопируйте ее вниз по столбцу:
=IF(AND(B2>50, B2<100), "x", "")
Если вам необходимо включить граничные значения (50 и 100), используйте меньше или равно оператор (<=) и больше или равно (>=) оператор:
=IF(AND(B2>=50, B2<=100), "x", "")
Чтобы обработать некоторые другие граничные значения без изменения формулы, введите минимальное и максимальное число в две отдельные ячейки и ссылайтесь на эти ячейки в своей формуле. Чтобы формула корректно работала во всех строках, обязательно используйте абсолютные ссылки для граничных ячеек ($F$1 и $F$2 в нашем случае):
=IF(AND(B2>=$F$1, B2<=$F$2), "x", "")
Используя аналогичную формулу, вы можете проверить, является ли дата водопад в заданном диапазоне .
Например, отметим даты с 10 сентября 2018 года по 30 сентября 2018 года включительно. Небольшое препятствие заключается в том, что даты нельзя передавать логическим тестам напрямую. Чтобы Excel понял даты, они должны быть заключены в функцию DATEVALUE, как показано ниже:
=IF(AND(B2>=DATEVALUE("9/10/2018"), B2<=DATEVALUE("9/30/2018")), "x", "")
Или просто введите С сайта и На даты в двух ячейках ($F$1 и $F$2 в данном примере) и "вытащить" их из этих ячеек с помощью уже знакомой формулы IF AND:
=IF(AND(B2>=$F$1, B2<=$F$2), "x", "")
Дополнительную информацию можно найти в разделе Excel Оператор IF между двумя числами или датами.
ЕСЛИ ЭТО И ТО, то вычислите что-то
Помимо возврата предопределенных значений, функция Excel ЕСЛИ И может также выполнять различные вычисления в зависимости от того, являются ли заданные условия ИСТИНОЙ или ЛОЖЬЮ.
Чтобы продемонстрировать подход, мы будем начислять бонус в размере 5% за "Закрытые" продажи с суммой больше или равной $100.
Если предположить, что сумма указана в столбце B, а статус заказа - в столбце C, то формула будет выглядеть следующим образом:
=IF(AND(B2>=100, C2="закрыто"), B2*10%, 0)
В приведенной выше формуле остальным ордерам присваивается ноль ( значение_если_ложно = 0). Если вы готовы дать небольшую стимулирующую премию, скажем 3%, заказам, которые не удовлетворяют условиям, включите соответствующее уравнение в значение_если_ложно аргумент:
=IF(AND(B2>=100, C2="закрыто"), B2*10%, B2*3%)
Множественные операторы IF AND в Excel
Как вы могли заметить, во всех приведенных выше примерах мы оценивали только два критерия. Но ничто не мешает вам включить в формулы IF AND три и более тестов, если они соответствуют этим общим ограничениям Excel:
- В Excel 2007 и выше в формуле можно использовать до 255 аргументов, при этом общая длина формулы не должна превышать 8 192 символов.
- В Excel 2003 и ниже допускается не более 30 аргументов, общая длина которых не должна превышать 1024 символов.
В качестве примера условий множественного И рассмотрим эти:
- Сумма (B2) должна быть больше или равна $100
- Статус заказа (C2) - "Закрыт"
- Дата поставки (D2) находится в пределах текущего месяца
Теперь нам нужен оператор IF AND, чтобы определить заказы, для которых все 3 условия ИСТИНА. И вот он:
=IF(AND(B2>=100, C2="Закрыто", MONTH(D2)=MONTH(TODAY())), "x", "")
Учитывая, что "текущим месяцем" на момент написания статьи был октябрь, формула дает следующие результаты:
Вложенные операторы IF AND
При работе с большими рабочими листами есть вероятность, что вам потребуется проверить несколько наборов различных критериев AND за один раз. Для этого вы берете классическую вложенную формулу ЕСЛИ в Excel и расширяете ее логические тесты с помощью операторов AND, как показано ниже:
IF(AND(...), выход1 , IF(AND(...), выход2 , IF(AND(...), выход3 , выход4 )))Чтобы получить общее представление, пожалуйста, посмотрите на следующий пример.
Предположим, что вы хотите оценить свою услугу на основе стоимости доставки и расчетного времени доставки (ETD):
- Отличный : стоимость пересылки менее $20 и ETD менее 3 дней
- Бедные : стоимость пересылки более $30 и ETD более 5 дней
- Среднее : все, что между ними
Чтобы добиться этого, вы пишете два отдельных оператора IF AND:
IF(AND(B2<20, C2<3), "Отлично", ...)
IF(AND(B2>30, C2>5), "Бедный", ...)
...и вложить одно в другое:
=IF(AND(B2>30, C2>5), "Плохо", IF(AND(B2<20, C2<3), "Отлично", "Средне"))
Результат будет выглядеть примерно так:
Больше примеров формул можно найти во вложенных операторах IF AND в Excel.
Функция IF AND с учетом регистра в Excel
Как уже упоминалось в начале этого учебника, формулы Excel ЕСЛИ И не различают прописные и строчные символы, поскольку функция И по своей природе не чувствительна к регистру.
Если вы работаете с с учетом регистра данные и хотите оценить условия AND с учетом текстового регистра, сделайте каждый отдельный логический тест внутри функции EXACT и вложите эти функции в оператор AND:
В данном примере мы собираемся отмечать заказы конкретного клиента (например, компании под названием Киберпространство ) с суммой, превышающей определенное число, скажем, $100.
Как вы можете видеть на скриншоте ниже, некоторые названия компаний в столбце B выглядят одинаково в регистре символов, и, тем не менее, это разные компании, поэтому мы должны проверить названия именно Суммы в столбце C - это числа, и для них мы проводим обычный тест "больше, чем":
=IF(AND(EXACT(B2, "Cyberspace"), C2>100), "x", "")
Чтобы сделать формулу более гибкой, вы можете ввести имя целевого клиента и сумму в две отдельные ячейки и ссылаться на эти ячейки. Только не забудьте зафиксировать ссылки на ячейки знаком $ ($G$1 и $G$2 в нашем случае), чтобы они не изменились при копировании формулы в другие строки:
=IF(AND(EXACT(B2, $G$1), C2>$G$2), "x", "")
Теперь вы можете ввести любое имя и сумму в ячейки со ссылками, и формула отметит соответствующие заказы в вашей таблице:
Формула IF OR AND в Excel
В формулах ЕСЛИ Excel вы не ограничены использованием только одной логической функции. Чтобы проверить различные комбинации нескольких условий, вы можете комбинировать функции ЕСЛИ, И, ИЛИ и другие для выполнения необходимых логических тестов. Вот пример формулы ЕСЛИ И ИЛИ, которая проверяет пару условий ИЛИ внутри И. А теперь я покажу вам, как вы можете выполнить два или более тестов И внутри ИЛИ.функция.
Предположим, вы хотите отметить заказы двух клиентов с суммой, превышающей определенное число, скажем, $100.
На языке Excel наши условия выражаются так:
OR(AND( Клиент1 , Сумма >100), AND( Клиент2 , Сумма >100)
Предполагая, что имена клиентов находятся в столбце B, суммы - в столбце C, 2 целевых имени находятся в G1 и G2, а целевая сумма - в G3, вы используете эту формулу, чтобы отметить соответствующие заказы знаком "x":
=IF(OR(AND(B2=$G$1, C2>$G$3), AND(B2=$G$2, C2>$G$3)), "x", "")
Тех же результатов можно достичь с помощью более компактного синтаксиса:
=IF(AND(OR(B2= $G$1,B2= $G$2), C2>$G$3), "x", "")
Не уверены, что полностью понимаете логику формулы? Более подробную информацию можно найти в статье Excel IF с несколькими условиями AND/OR.
Вот так можно использовать функции IF и AND вместе в Excel. Спасибо за прочтение и до встречи на следующей неделе!
Практическая тетрадь
ЕСЛИ И Excel - примеры формул (файл.xlsx)