Функция ЕСЛИ позволяет выполнять логические сравнения значений и ожидаемых результатов. Она проверяет условие и в зависимости от его истинности возвращает результат.
-
=ЕСЛИ(это истинно, то сделать это, в противном случае сделать что-то еще)
Поэтому у функции ЕСЛИ возможны два результата. Первый результат возвращается в случае, если сравнение истинно, второй — если сравнение ложно.
Заявления ЕСЛИ являются исключительно надежными и являются основой для многих моделей электронных таблиц, но они также являются основной причиной многих проблем с электронными таблицами. В идеале утверждение ЕСЛИ должно применяться к минимальным условиям, таким как «Мужчина/женщина», «Да/Нет/Возможно», но иногда может потребоваться оценить более сложные сценарии, для которых требуется вложенное* более 3 функций ЕСЛИ.
* «Вложенность» означает объединение нескольких функций в одной формуле.
Функция ЕСЛИ, одна из логических функций, служит для возвращения разных значений в зависимости от того, соблюдается ли условие.
Синтаксис
ЕСЛИ(лог_выражение; значение_если_истина; [значение_если_ложь])
Например:
-
=ЕСЛИ(A2>B2;»Превышение бюджета»;»ОК»)
-
=ЕСЛИ(A2=B2;B4-A4;»»)
Имя аргумента |
Описание |
лог_выражение (обязательный) |
Условие, которое нужно проверить. |
значение_если_истина (обязательный) |
Значение, которое должно возвращаться, если лог_выражение имеет значение ИСТИНА. |
значение_если_ложь (необязательный) |
Значение, которое должно возвращаться, если лог_выражение имеет значение ЛОЖЬ. |
Примечания
Excel позволяет использовать до 64 вложенных функций ЕСЛИ, но это вовсе не означает, что так и надо делать. Почему?
-
Нужно очень крепко подумать, чтобы выстроить последовательность из множества операторов ЕСЛИ и обеспечить их правильную отработку по каждому условию на протяжении всей цепочки. Если при вложении вы допустите в формуле малейшую неточность, она может сработать в 75 % случаев, но вернуть непредвиденные результаты в остальных 25 %. К сожалению, шансов отыскать эти 25 % немного.
-
Работа с множественными операторами ЕСЛИ может оказаться чрезвычайно трудоемкой, особенно если вы вернетесь к ним через какое-то время и попробуете разобраться, что пытались сделать вы или, и того хуже, кто-то другой.
Если вы видите, что ваш оператор ЕСЛИ все разрастается, устремляясь в бесконечность, значит вам пора отложить мышь и пересмотреть свою стратегию.
Давайте посмотрим, как правильно создавать операторы с несколькими вложенными функциями ЕСЛИ и как понять, когда пора переходить к другим средствам из арсенала Excel.
Примеры
Ниже приведен пример довольно типичного вложенного оператора ЕСЛИ, предназначенного для преобразования тестовых баллов учащихся в их буквенный эквивалент.
-
=ЕСЛИ(D2>89;»A»;ЕСЛИ(D2>79;»B»;ЕСЛИ(D2>69;»C»;ЕСЛИ(D2>59;»D»;»F»))))
Этот сложный оператор с вложенными функциями ЕСЛИ следует простой логике:
-
Если тестовых баллов (в ячейке D2) больше 89, учащийся получает оценку A.
-
Если тестовых баллов больше 79, учащийся получает оценку B.
-
Если тестовых баллов больше 69, учащийся получает оценку C.
-
Если тестовых баллов больше 59, учащийся получает оценку D.
-
В противном случае учащийся получает оценку F.
Этот частный пример относительно безопасен, поскольку взаимосвязь между тестовыми баллами и буквенными оценками вряд ли будет меняться, так что дополнительных изменений не потребуется. Но что если вам потребуется разделить оценки на A+, A и A– (и т. д.)? Теперь ваши четыре условных оператора ЕСЛИ нужно переписать с учетом 12 условий! Вот так будет выглядеть ваша формула:
-
=ЕСЛИ(B2>97;»A+»;ЕСЛИ(B2>93;»A»;ЕСЛИ(B2>89;»A-«;ЕСЛИ(B2>87;»B+»;ЕСЛИ(B2>83;»B»;ЕСЛИ(B2>79;»B-«; ЕСЛИ(B2>77;»C+»;ЕСЛИ(B2>73;»C»;ЕСЛИ(B2>69;»C-«;ЕСЛИ(B2>57;»D+»;ЕСЛИ(B2>53;»D»;ЕСЛИ(B2>49;»D-«;»F»))))))))))))
Она по-прежнему работает правильно и работает правильно, но на написание и проверку нужно много времени, чтобы убедиться, что она работает правильно. Еще одна наиболее взглялая проблема в том, что вам приходилось вручную вводить оценки и эквивалентные буквы оценок. Какова вероятность случайного опечатки? Теперь представьте, что вы пытаетесь сделать это 64 раза с более сложными условиями! Конечно, это возможно, но действительно ли вы хотите обучебиться с такого рода усилиями и возможными ошибками, которые будет трудно обнаружить?
Совет: Для каждой функции в Excel обязательно указываются открывающая и закрывающая скобки (). При редактировании Excel попытается помочь вам понять, что куда идет, окрашивая разными цветами части формулы. Например, во время редактирования показанной выше формулы при перемещении курсора за каждую закрывающую скобку «)» тем же цветом будет окрашиваться соответствующая открывающая скобка. Это особенно удобно в сложных вложенных формулах, когда вы пытаетесь выяснить, достаточно ли в них парных скобок.
Дополнительные примеры
Ниже приведен распространенный пример расчета комиссионных за продажу в зависимости от уровней дохода.
-
=ЕСЛИ(C9>15000;20%;ЕСЛИ(C9>12500;17,5%;ЕСЛИ(C9>10000;15%;ЕСЛИ(C9>7500;12,5%;ЕСЛИ(C9>5000;10%;0)))))
Эта формула означает: ЕСЛИ(ячейка C9 больше 15 000, то вернуть 20 %, ЕСЛИ(ячейка C9 больше 12 500, то вернуть 17,5 % и т. д…
Хотя она выглядит примерно так же, как в примере с более ранними оценками, эта формула является отличным примером того, насколько сложно использовать крупные выписки ЕСЛИ. Что делать, если ваша организация решила добавить новые уровни компенсаций и, возможно, даже изменить существующие значения в рублях или процентах? У вас будет много работы на руках!
Совет: Чтобы сложные формулы было проще читать, вы можете вставить разрывы строк в строке формул. Просто нажмите клавиши ALT+ВВОД перед текстом, который хотите перенести на другую строку.
Перед вами пример сценария для расчета комиссионных с неправильной логикой:
Видите, что не так? Сравните порядок сравнения доходов с предыдущим примером. Как это будет происходить? Правильно, она будет снизу вверх (от 5 000 до 15 000 рублей), а не наоборот. Но почему это так важно? Это очень важно, так как формула не может пройти первую оценку для любого значения стоимостью более 5 000 рублей. Предположим, что вы получили доход в размере 12 500 долларов США— если вы получили 10 %, так как она больше 5 000 рублей, и она остановится на этом. Это может быть чрезвычайно проблемным, так как во многих ситуациях такие типы ошибок остаются незамеченными до тех пор, пока они не оказывают отрицательного влияния. Так что же можно сделать, зная о том, что при сложных вложенных заявлениях ЕСЛИ существуют серьезные недостатки? В большинстве случаев вместо создания сложной формулы с помощью функции ЕСЛИ можно использовать функцию ВЛОП. С помощью ВLOOKUPсначала нужно создать таблицу для справки:
-
=ВПР(C2;C5:D17;2;ИСТИНА)
В этой формуле предлагается найти значение ячейки C2 в диапазоне C5:C17. Если значение найдено, возвращается соответствующее значение из той же строки в столбце D.
-
=ВПР(B9;B2:C6;2;ИСТИНА)
Эта формула ищет значение ячейки B9 в диапазоне B2:B22. Если значение найдено, возвращается соответствующее значение из той же строки в столбце C.
Примечание: В обеих функциях ВПР в конце формулы используется аргумент ИСТИНА, который означает, что мы хотим найти близкое совпадение. Иначе говоря, будут сопоставляться точные значения в таблице подстановки, а также все значения, попадающие между ними. В этом случае таблицы подстановки нужно сортировать по возрастанию, от меньшего к большему.
В этой области в этой области вложена более подробная информация,но это намного проще, чем 12-уровневая сложная вложенная если-выписка! Есть и другие, менее очевидные, преимущества:
-
Таблицы ссылок функции ВПР открыты и их легко увидеть.
-
Значения в таблицах просто обновлять, и вам не потребуется трогать формулу, если условия изменятся.
-
Если вы не хотите, чтобы люди видели вашу таблицу ссылок или вмешивались в нее, просто поместите ее на другой лист.
Вы знали?
Теперь есть функция УСЛОВИЯ, которая может заменить несколько вложенных операторов ЕСЛИ. Так, в нашем первом примере оценок с 4 вложенными функциями ЕСЛИ:
-
=ЕСЛИ(D2>89;»A»;ЕСЛИ(D2>79;»B»;ЕСЛИ(D2>69;»C»;ЕСЛИ(D2>59;»D»;»F»))))
можно сделать все гораздо проще с помощью одной функции ЕСЛИМН:
-
=ЕСЛИМН(D2>89;»A»;D2>79;»B»;D2>69;»C»;D2>59;»D»;ИСТИНА;»F»)
Функция ЕСЛИМН — просто находка! Благодаря ей вам больше не нужно переживать обо всех этих операторах ЕСЛИ и скобках.
Дополнительные сведения
Вы всегда можете задать вопрос специалисту Excel Tech Community или попросить помощи в сообществе Answers community.
Статьи по теме
Видео: расширенные функции ЕСЛИ
Функция ЕСЛИМН (Microsoft 365, Excel 2016 и более поздних)
Функция СЧЁТЕ ЕСЛИ подсчитывирует значения на основе одного условия
Функция СЧЁТЕIFS подсчитывирует значения на основе нескольких критериев
Функция СУММЕ ЕСЛИ суммирует значения на основе одного условия
Функция СУММЕСС суммирует значения на основе нескольких критериев.
Функция И
Функция ИЛИ
Функция ВЛ.В.В ФУНКЦИИ
Общие сведения о формулах в Excel
Как избежать ошибок в формулах
Обнаружение ошибок в формулах
Логические функции
Excel (по алфавиту)
Excel (по категориям)
Логический оператор ЕСЛИ в Excel применяется для записи определенных условий. Сопоставляются числа и/или текст, функции, формулы и т.д. Когда значения отвечают заданным параметрам, то появляется одна запись. Не отвечают – другая.
Логические функции – это очень простой и эффективный инструмент, который часто применяется в практике. Рассмотрим подробно на примерах.
Синтаксис функции ЕСЛИ с одним условием
Синтаксис оператора в Excel – строение функции, необходимые для ее работы данные.
=ЕСЛИ (логическое_выражение;значение_если_истина;значение_если_ложь)
Разберем синтаксис функции:
Логическое_выражение – ЧТО оператор проверяет (текстовые либо числовые данные ячейки).
Значение_если_истина – ЧТО появится в ячейке, когда текст или число отвечают заданному условию (правдивы).
Значение,если_ложь – ЧТО появится в графе, когда текст или число НЕ отвечают заданному условию (лживы).
Пример:
Оператор проверяет ячейку А1 и сравнивает ее с 20. Это «логическое_выражение». Когда содержимое графы больше 20, появляется истинная надпись «больше 20». Нет – «меньше или равно 20».
Внимание! Слова в формуле необходимо брать в кавычки. Чтобы Excel понял, что нужно выводить текстовые значения.
Еще один пример. Чтобы получить допуск к экзамену, студенты группы должны успешно сдать зачет. Результаты занесем в таблицу с графами: список студентов, зачет, экзамен.
Обратите внимание: оператор ЕСЛИ должен проверить не цифровой тип данных, а текстовый. Поэтому мы прописали в формуле В2= «зач.». В кавычки берем, чтобы программа правильно распознала текст.
Функция ЕСЛИ в Excel с несколькими условиями
Часто на практике одного условия для логической функции мало. Когда нужно учесть несколько вариантов принятия решений, выкладываем операторы ЕСЛИ друг в друга. Таким образом, у нас получиться несколько функций ЕСЛИ в Excel.
Синтаксис будет выглядеть следующим образом:
=ЕСЛИ(логическое_выражение;значение_если_истина;ЕСЛИ(логическое_выражение;значение_если_истина;значение_если_ложь))
Здесь оператор проверяет два параметра. Если первое условие истинно, то формула возвращает первый аргумент – истину. Ложно – оператор проверяет второе условие.
Примеры несколько условий функции ЕСЛИ в Excel:
Таблица для анализа успеваемости. Ученик получил 5 баллов – «отлично». 4 – «хорошо». 3 – «удовлетворительно». Оператор ЕСЛИ проверяет 2 условия: равенство значения в ячейке 5 и 4.
В этом примере мы добавили третье условие, подразумевающее наличие в табеле успеваемости еще и «двоек». Принцип «срабатывания» оператора ЕСЛИ тот же.
Расширение функционала с помощью операторов «И» и «ИЛИ»
Когда нужно проверить несколько истинных условий, используется функция И. Суть такова: ЕСЛИ а = 1 И а = 2 ТОГДА значение в ИНАЧЕ значение с.
Функция ИЛИ проверяет условие 1 или условие 2. Как только хотя бы одно условие истинно, то результат будет истинным. Суть такова: ЕСЛИ а = 1 ИЛИ а = 2 ТОГДА значение в ИНАЧЕ значение с.
Функции И и ИЛИ могут проверить до 30 условий.
Пример использования оператора И:
Пример использования функции ИЛИ:
Как сравнить данные в двух таблицах
Пользователям часто приходится сравнить две таблицы в Excel на совпадения. Примеры из «жизни»: сопоставить цены на товар в разные привозы, сравнить балансы (бухгалтерские отчеты) за несколько месяцев, успеваемость учеников (студентов) разных классов, в разные четверти и т.д.
Чтобы сравнить 2 таблицы в Excel, можно воспользоваться оператором СЧЕТЕСЛИ. Рассмотрим порядок применения функции.
Для примера возьмем две таблицы с техническими характеристиками разных кухонных комбайнов. Мы задумали выделение отличий цветом. Эту задачу в Excel решает условное форматирование.
Исходные данные (таблицы, с которыми будем работать):
Выделяем первую таблицу. Условное форматирование – создать правило – использовать формулу для определения форматируемых ячеек:
В строку формул записываем: =СЧЕТЕСЛИ (сравниваемый диапазон; первая ячейка первой таблицы)=0. Сравниваемый диапазон – это вторая таблица.
Чтобы вбить в формулу диапазон, просто выделяем его первую ячейку и последнюю. «= 0» означает команду поиска точных (а не приблизительных) значений.
Выбираем формат и устанавливаем, как изменятся ячейки при соблюдении формулы. Лучше сделать заливку цветом.
Выделяем вторую таблицу. Условное форматирование – создать правило – использовать формулу. Применяем тот же оператор (СЧЕТЕСЛИ).
Скачать все примеры функции ЕСЛИ в Excel
Здесь вместо первой и последней ячейки диапазона мы вставили имя столбца, которое присвоили ему заранее. Можно заполнять формулу любым из способов. Но с именем проще.
На чтение 3 мин Просмотров 4.5к. Опубликовано 07.12.2021
Эта функция проверяет, правильно ли заданное в аргументах утверждение, если да то выполняет указанное действие. Например, можно просто вывести ИСТИНА или ЛОЖЬ.
Содержание
- Результат функции
- Формула
- Аргументы функции
- Важная информация
- Примеры
- Проверяем соответствует ли число заданным критериям с помощью функции ЕСЛИ в Excel
- Проверяем сразу несколько критериев
- Вычисляем комиссию
- Пример 4: Использование логических операторов (AND/OR) в функции IF в Excel
- Как убрать ошибки при использовании функции ЕСЛИ в Excel
Результат функции
Результатом функции будет указанное вами значение, указать это самое значение можно для двух исходов(истина или ложь)
Формула
=ЕСЛИ(проверяемый_аргумент; значение_если_истина; значение_если_ложь)
Аргументы функции
- проверяемый аргумент — аргумент, который, в результате выполнения функции, будет проверен. Результатом будет ИСТИНА либо ЛОЖЬ;
- значение_если_истина — значение, которое вернет функция ЕСЛИ в случае, если проверяемый аргумент оказался истиной.
- значение_если_ложь — значение, которое вернет функция ЕСЛИ в случае, если проверяемый аргумент оказался ложью.
Важная информация
- Максимум проверяемых аргументов может быть 64;
- В случае, когда вы используете функцию для проверки каких-либо условий относительно массива, будет проверено каждое значение этого самого массива;
- Если вместо аргумента вы оставите пустое место, результатом выполнения функции будет 0, то есть.
На картинке ниже, мы оставили пустое место для значения, которое будет результатом, если проверяемый аргумент оказался ложью:
Тоже самое, но для аргумента «Истины»:
Примеры
Итак, давайте рассмотрим различные ситуации.
Проверяем соответствует ли число заданным критериям с помощью функции ЕСЛИ в Excel
В проверяемом аргументе функции, при работе с обычными числами, вы указываете оператор(или операторы) чтобы проверить, соответствует ли число каким-либо критериям. Вот список этих операторов:
Сразу же рассмотрим такую ситуацию:
Если число в столбце A больше либо равно 35, то результатом выполнения функции будет «Сдал», если же нет, то «Не сдал».
Проверяем сразу несколько критериев
Итак, давайте рассмотрим ситуацию, когда вам нужно проверить, соответствует ли число сразу нескольким критериям. Мы помним, что максимальное число проверяемых аргументов — 64. Давайте попробуем проверить хотя бы 2 критерия.
В приведенном ниже примере мы проверяем два условия.
- Меньше ли значение в ячейке чем число 35;
- В случае, когда в результате первой проверки возвращается ЛОЖЬ, проверяется больше или равно значение в ячейке чем число 75.
Вычисляем комиссию
Итак, с помощью этой функции мы можем даже посчитать комиссию, которую забирает себе конкретный продавец.
В ситуации описанной ниже, продавец не получает комиссию, если у него меньше 50-ти продаж. Если первое проверочное условие он прошел, тогда проверяем второе. Если у продавца меньше 100 продаж, его комиссия будет продажи*2%, а если больше, то — продажи*4%
Пример 4: Использование логических операторов (AND/OR) в функции IF в Excel
Также, мы можем использовать функции И и ИЛИ для проверки по сразу нескольким критериям.
Допустим, как указано на картинке ниже, мы имеем такую табличку:
Наша задача — рассчитать у кого из студентов будет стипендия. Данные для выдачи стипендии будут сразу же в формуле:
=ЕСЛИ(И(B2>80;C2>80%); "Да"; "Нет")
Как убрать ошибки при использовании функции ЕСЛИ в Excel
Теперь давайте разберемся как мы можем фильтровать ошибки при использовании функции.
Формула:
=ЕСЛИ(ЕСЛИОШИБКА(A1);0;A1)
Теперь, если в результате выполнения функции мы получим ошибку, она будет отфильтрована и превращена в 0. А если ошибки не произойдет — мы просто получим значение.
Точно также можно использовать функцию ЕПУСТО:
=ЕСЛИ(ЕПУСТО(A1);0;A1)
Содержание
- Что возвращает функция
- Формула ЕСЛИ в Excel – примеры нескольких условий
- Синтаксис функции ЕСЛИ
- Расширение функционала с помощью операторов «И» и «ИЛИ»
- Простейший пример применения.
- Применение «ЕСЛИ» с несколькими условиями
- Операторы сравнения чисел и строк
- Одновременное выполнение двух условий
- Общее определение и задачи
- Как правильно записать?
- Дополнительная информация
- Вложенные условия с математическими выражениями.
- Аргументы функции
- А если один из параметров не заполнен?
- Функция ЕПУСТО
- Функции ИСТИНА и ЛОЖЬ
- Составное условие
- Простое условие
- Пример функции с несколькими условиями
- Пример использования «ЕСЛИ»
- Проверяем простое числовое условие с помощью функции IF (ЕСЛИ)
- Заключение
Что возвращает функция
Заданное вами значение при выполнении двух условий ИСТИНА или ЛОЖЬ.
Довольно часто количество возможных условий не 2 (проверяемое и альтернативное), а 3, 4 и более. В этом случае также можно использовать функцию ЕСЛИ, но теперь ее придется вкладывать друг в друга, указывая все условия по очереди. Рассмотрим следующий пример.
Нескольким менеджерам по продажам нужно начислить премию в зависимости от выполнения плана продаж. Система мотивации следующая. Если план выполнен менее, чем на 90%, то премия не полагается, если от 90% до 95% — премия 10%, от 95% до 100% — премия 20% и если план перевыполнен, то 30%. Как видно здесь 4 варианта. Чтобы их указать в одной формуле потребуется следующая логическая структура. Если выполняется первое условие, то наступает первый вариант, в противном случае, если выполняется второе условие, то наступает второй вариант, в противном случае если… и т.д. Количество условий может быть довольно большим. В конце формулы указывается последний альтернативный вариант, для которого не выполняется ни одно из перечисленных ранее условий (как третье поле в обычной формуле ЕСЛИ). В итоге формула имеет следующий вид.
Комбинация функций ЕСЛИ работает так, что при выполнении какого-либо указанно условия следующие уже не проверяются. Поэтому важно их указать в правильной последовательности. Если бы мы начали проверку с B2<1, то условия B2<0,9 и B2<0,95 Excel бы просто «не заметил», т.к. они входят в интервал B2<1 который проверился бы первым (если значение менее 0,9, само собой, оно также меньше и 1). И тогда у нас получилось бы только два возможных варианта: менее 1 и альтернативное, т.е. 1 и более.
При написании формулы легко запутаться, поэтому рекомендуется смотреть на всплывающую подсказку.
В конце нужно обязательно закрыть все скобки, иначе эксель выдаст ошибку
Синтаксис функции ЕСЛИ
Вот как выглядит синтаксис этой функции и её аргументы:
=ЕСЛИ(логическое выражение, значение если «да», значение если «нет»)
Логическое выражение – (обязательное) условие, которое возвращает значение «истина» или «ложь» («да» или «нет»);
Значение если «да» – (обязательное) действие, которое выполняется в случае положительного ответа;
Значение если «нет» – (обязательное) действие, которое выполняется в случае отрицательного ответа;
Давайте вместе подробнее рассмотрим эти аргументы.
Первый аргумент – это логический вопрос. И ответ этот может быть только «да» или «нет», «истина» или «ложь».
Как правильно задать вопрос? Для этого можно составить логическое выражение, используя знаки “=”, “>”, “<”, “>=”, “<=”, “<>”.
Расширение функционала с помощью операторов «И» и «ИЛИ»
Когда нужно проверить несколько истинных условий, используется функция И. Суть такова: ЕСЛИ а = 1 И а = 2 ТОГДА значение в ИНАЧЕ значение с.
Функция ИЛИ проверяет условие 1 или условие 2. Как только хотя бы одно условие истинно, то результат будет истинным. Суть такова: ЕСЛИ а = 1 ИЛИ а = 2 ТОГДА значение в ИНАЧЕ значение с.
Функции И и ИЛИ могут проверить до 30 условий.
Пример использования оператора И:
Пример использования функции ИЛИ:
Простейший пример применения.
Предположим, вы работаете в компании, которая занимается продажей шоколада в нескольких регионах и работает с множеством покупателей.
Нам необходимо выделить продажи, которые произошли в нашем регионе, и те, которые были сделаны за рубежом. Для этого нужно добавить в таблицу ещё один признак для каждой продажи – страну, в которой она произошла. Мы хотим, чтобы этот признак создавался автоматически для каждой записи (то есть, строки).
В этом нам поможет функция ЕСЛИ. Добавим в таблицу данных столбец “Страна”. Регион “Запад” – это местные продажи («Местные»), а остальные регионы – это продажи за рубеж («Экспорт»).
Применение «ЕСЛИ» с несколькими условиями
Мы только что рассмотрели пример использования оператора «ЕСЛИ» с одним логическим выражением. Но в программе также имеется возможность задавать больше одного условия. При этом сначала будет проводиться проверка по первому, и в случае его успешного выполнения сразу отобразится заданное значение. И только если не будет выполнено первое логическое выражение, в силу вступит проверка по второму.
Рассмотрим наглядно на примере все той же таблицы. Но на этот раз усложним задачу. Теперь нужно проставить скидку на женскую обувь в зависимости от вида спорта.
Первое условия – это проверка пола. Если “мужской” – сразу выводится значение 0. Если же это “женский”, то начинается проверка по второму условию. Если вид спорта бег – 20%, если теннис – 10%.
Пропишем формулу для этих условий в нужной нам ячейке.
=ЕСЛИ(B2=”мужской”;0; ЕСЛИ(C2=”бег”;20%;10%))
Щелкаем Enter и получаем результат согласно заданным условиям.
Далее растягиваем формулу на все оставшиеся строки таблицы.
Операторы сравнения чисел и строк
Операторы сравнения чисел и строк представлены операторами, состоящими из одного или двух математических знаков равенства и неравенства:
- < – меньше;
- <= – меньше или равно;
- > – больше;
- >= – больше или равно;
- = – равно;
- <> – не равно.
Синтаксис:
Результат = Выражение1 Оператор Выражение2 |
- Результат – любая числовая переменная;
- Выражение – выражение, возвращающее число или строку;
- Оператор – любой оператор сравнения чисел и строк.
Если переменная Результат будет объявлена как Boolean (или Variant), она будет возвращать значения False и True. Числовые переменные других типов будут возвращать значения 0 (False) и -1 (True).
Операторы сравнения чисел и строк работают с двумя числами или двумя строками. При сравнении числа со строкой или строки с числом, VBA Excel сгенерирует ошибку Type Mismatch (несоответствие типов данных):
Sub Primer1() On Error GoTo Instr Dim myRes As Boolean ‘Сравниваем строку с числом myRes = “пять” > 3 Instr: If Err.Description <> “” Then MsgBox “Произошла ошибка: “ & Err.Description End If End Sub |
Сравнение строк начинается с их первых символов. Если они оказываются равны, сравниваются следующие символы. И так до тех пор, пока символы не окажутся разными или одна или обе строки не закончатся.
Значения буквенных символов увеличиваются в алфавитном порядке, причем сначала идут все заглавные (прописные) буквы, затем строчные. Если необходимо сравнить длины строк, используйте функцию Len.
myRes = “семь” > “восемь” ‘myRes = True myRes = “Семь” > “восемь” ‘myRes = False myRes = Len(“семь”) > Len(“восемь”) ‘myRes = False |
Одновременное выполнение двух условий
Также в Эксель существует возможность вывести данные по одновременному выполнению двух условий. При этом значение будет считаться ложным, если хотя бы одно из условий не выполнено. Для этой задачи применяется оператор «И».
Рассмотрим на примере нашей таблицы. Теперь скидка 30% будет проставлена только, если это женская обувь и предназначена для бега. При соблюдении этих условий одновременно значение ячейки будет равно 30%, в противном случае – 0.
Для этого используем следующую формулу:
=ЕСЛИ(И(B2=”женский”;С2=”бег”);30%;0)
Нажимаем клавишу Enter, чтобы отобразить результат в ячейке.
Аналогично примерам выше, растягиваем формулу на остальные строки.
Общее определение и задачи
«ЕСЛИ» является стандартной функцией программы Microsoft Excel. В ее задачи входит проверка выполнения конкретного условия. Когда условие выполнено (истина), то в ячейку, где использована данная функция, возвращается одно значение, а если не выполнено (ложь) – другое.
Синтаксис этой функции выглядит следующим образом: «ЕСЛИ(логическое выражение; [функция если истина]; [функция если ложь])»
.
Как правильно записать?
Устанавливаем курсор в ячейку G2 и вводим знак “=”. Для Excel это означает, что сейчас будет введена формула. Поэтому как только далее будет нажата буква “е”, мы получим предложение выбрать функцию, начинающуюся этой буквы. Выбираем “ЕСЛИ”.
Далее все наши действия также будут сопровождаться подсказками.
В качестве первого аргумента записываем: С2=”Запад”. Как и в других функциях Excel, адрес ячейки можно не вводить вручную, а просто кликнуть на ней мышкой. Затем ставим “,” и указываем второй аргумент.
Второй аргумент – это значение, которое примет ячейка G2, если записанное нами условие будет выполнено. Это будет слово “Местные”.
После этого снова через запятую указываем значение третьего аргумента. Это значение примет ячейка G2, если условие не будет выполнено: “Экспорт”. Не забываем закончить ввод формулы, закрыв скобку и затем нажав “Enter”.
Наша функция выглядит следующим образом:
=ЕСЛИ(C2=”Запад”,”Местные”,”Экспорт”)
Наша ячейка G2 приняла значение «Местные».
Теперь нашу функцию можно скопировать во все остальные ячейки столбца G.
Дополнительная информация
- В функции IF (ЕСЛИ) может быть протестировано 64 условий за один раз;
- Если какой-либо из аргументов функции является массивом – оценивается каждый элемент массива;
- Если вы не укажете условие аргумента FALSE (ЛОЖЬ) value_if_false (значение_если_ложь) в функции, т.е. после аргумента value_if_true (значение_если_истина) есть только запятая (точка с запятой), функция вернет значение “0”, если результат вычисления функции будет равен FALSE (ЛОЖЬ).
На примере ниже, формула =IF(A1> 20,”Разрешить”) или =ЕСЛИ(A1>20;”Разрешить”) , где value_if_false (значение_если_ложь) не указано, однако аргумент value_if_true (значение_если_истина) по-прежнему следует через запятую. Функция вернет “0” всякий раз, когда проверяемое условие не будет соответствовать условиям TRUE (ИСТИНА).
| - Если вы не укажете условие аргумента TRUE(ИСТИНА) (value_if_true (значение_если_истина)) в функции, т.е. условие указано только для аргумента value_if_false (значение_если_ложь), то формула вернет значение “0”, если результат вычисления функции будет равен TRUE (ИСТИНА);
На примере ниже формула равна =IF (A1>20;«Отказать») или =ЕСЛИ(A1>20;”Отказать”), где аргумент value_if_true (значение_если_истина) не указан, формула будет возвращать “0” всякий раз, когда условие соответствует TRUE (ИСТИНА).
Вложенные условия с математическими выражениями.
Вот еще одна типичная задача: цена за единицу товара изменяется в зависимости от его количества. Ваша цель состоит в том, чтобы написать формулу, которая вычисляет цену для любого количества товаров, введенного в определенную ячейку. Другими словами, ваша формула должна проверить несколько условий и выполнить различные вычисления в зависимости от того, в какой диапазон суммы входит указанное количество товара.
Эта задача также может быть выполнена с помощью нескольких вложенных функций ЕСЛИ. Логика та же, что и в приведенном выше примере, с той лишь разницей, что вы умножаете указанное количество на значение, возвращаемое вложенными условиями (т.е. соответствующей ценой за единицу).
Предполагая, что количество записывается в B8, формула будет такая:
=B8*ЕСЛИ(B8>=101; 12; ЕСЛИ(B8>=50; 14; ЕСЛИ(B8>=20; 16; ЕСЛИ( B8>=11; 18; ЕСЛИ(B8>=1; 22; “”)))))
И вот результат:
Как вы понимаете, этот пример демонстрирует только общий подход, и вы можете легко настроить эту вложенную функцию в зависимости от вашей конкретной задачи.
Например, вместо «жесткого кодирования» цен в самой формуле можно ссылаться на ячейки, в которых они указаны (ячейки с B2 по B6). Это позволит редактировать исходные данные без необходимости обновления самой формулы:
=B8*ЕСЛИ(B8>=101; B6; ЕСЛИ(B8>=50; B5; ЕСЛИ(B8>=20; B4; ЕСЛИ( B8>=11; B3; ЕСЛИ(B8>=1; B2; “”)))))
Аргументы функции
- logical_test (лог_выражение) – это условие, которое вы хотите протестировать. Этот аргумент функции должен быть логичным и определяемым как ЛОЖЬ или ИСТИНА. Аргументом может быть как статичное значение, так и результат функции, вычисления;
- [value_if_true] ([значение_если_истина]) – (не обязательно) – это то значение, которое возвращает функция. Оно будет отображено в случае, если значение которое вы тестируете соответствует условию ИСТИНА;
- [value_if_false] ([значение_если_ложь]) – (не обязательно) – это то значение, которое возвращает функция. Оно будет отображено в случае, если условие, которое вы тестируете соответствует условию ЛОЖЬ.
А если один из параметров не заполнен?
Если вас не интересует, что будет, к примеру, если интересующее вас условие не выполняется, тогда можно не вводить второй аргумент. К примеру, мы предоставляем скидку 10% в случае, если заказано более 100 единиц товара. Не указываем никакого аргумента для случая, когда условие не выполняется.
=ЕСЛИ(E2>100,F2*0.1)
Что будет в результате?
Насколько это красиво и удобно – судить вам. Думаю, лучше все же использовать оба аргумента.
И в случае, если второе условие не выполняется, но делать при этом ничего не нужно, вставьте в ячейку пустое значение.
=ЕСЛИ(E2>100,F2*0.1,””)
Однако, такая конструкция может быть использована в том случае, если значение «Истина» или «Ложь» будут использованы другими функциями Excel в качестве логических значений.
Обратите также внимание, что полученные логические значения в ячейке всегда выравниваются по центру. Это видно и на скриншоте выше.
Более того, если вам действительно нужно только проверить какое-то условие и получить «Истина» или «Ложь» («Да» или «Нет»), то вы можете использовать следующую конструкцию –
=ЕСЛИ(E2>100,ИСТИНА,ЛОЖЬ)
Обратите внимание, что кавычки здесь использовать не нужно. Если вы заключите аргументы в кавычки, то в результате выполнения функции ЕСЛИ вы получите текстовые значения, а не логические.
Функция ЕПУСТО
Если нужно определить, является ли ячейка пустой, можно использовать функцию ЕПУСТО (ISBLANK), которая имеет следующий синтаксис:
=ЕПУСТО(значение)
Аргумент значение может быть ссылкой на ячейку или диапазон. Если значение ссылается на пустую ячейку или диапазон, функция возвращает логическое значение ИСТИНА, в противном случае ЛОЖЬ.
Функции ИСТИНА и ЛОЖЬ
Функции ИСТИНА (TRUE) и ЛОЖЬ (FALSE) предоставляют альтернативный способ записи логических значений ИСТИНА и ЛОЖЬ. Эти функции не имеют аргументов и выглядят следующим образом:
=ИСТИНА()
=ЛОЖЬ()
Например, ячейка А1 содержит логическое выражение. Тогда следующая функция возвратить значение “Проходите”, если выражение в ячейке А1 имеет значение ИСТИНА:
=ЕСЛИ(А1=ИСТИНА();”Проходите”;”Стоп”)
В противном случае формула возвратит “Стоп”.
Составное условие
Составное условие состоит из простых, связанных логическими операциями И() и ИЛИ().
И() – логическая операция, требующая одновременного выполнения всех условий, связанных ею.
ИЛИ() – логическая операция, требующая выполнения любого из перечисленных условий, связанных ею.
Простое условие
Что же делает функция ЕСЛИ()? Посмотрите на схему. Здесь приведен простой пример работы функции при определении знака числа а.
Условие а>=0 определяет два возможных варианта: неотрицательное число (ноль или положительное) и отрицательное. Ниже схемы приведена запись формулы в Excel. После условия через точку с запятой перечисляются варианты действий. В случае истинности условия, в ячейке отобразится текст “неотрицательное”, иначе – “отрицательное”. То есть запись, соответствующая ветви схемы «Да», а следом – «Нет».
Текстовые данные в формуле заключаются в кавычки, а формулы и числа записывают без них.
Если результатом должны быть данные, полученные в результате вычислений, то смотрим следующий пример. Выполним увеличение неотрицательного числа на 10, а отрицательное оставим без изменений.
На схеме видно, что при выполнении условия число увеличивается на десять, и в формуле Excel записывается расчетное выражение А1+10 (выделено зеленым цветом). В противном случае число не меняется, и здесь расчетное выражение состоит только из обозначения самого числа А1 (выделено красным цветом).
Это была краткая вводная часть для начинающих, которые только начали постигать азы Excel. А теперь давайте рассмотрим более серьезный пример с использованием условной функции.
Задание:
Процентная ставка прогрессивного налога зависит от дохода. Если доход предприятия больше определенной суммы, то ставка налога выше. Используя функцию ЕСЛИ, рассчитайте сумму налога.
Решение:
Решение данной задачи видно на рисунке ниже. Но внесем все-таки ясность в эту иллюстрацию. Основные исходные данные для решения этой задачи находятся в столбцах А и В. В ячейке А5 указано пограничное значение дохода при котором изменяется ставка налогообложения. Соответствующие ставки указаны в ячейках В5 и В6. Доход фирм указан в диапазоне ячеек В9:В14. Формула расчета налога записывается в ячейку С9: =ЕСЛИ(B9>A$5;B9*B$6;B9*B$5). Эту формулу нужно скопировать в нижние ячейки (выделено желтым цветом).
В расчетной формуле адреса ячеек записаны в виде A$5, B$6, B$5. Знак доллара делает фиксированной часть адреса, перед которой он установлен, при копировании формулы. Здесь установлен запрет на изменение номера строки в адресе ячейки.
Пример функции с несколькими условиями
В функцию «ЕСЛИ» можно также вводить несколько условий. В этой ситуации применяется вложение одного оператора «ЕСЛИ» в другой. При выполнении условия в ячейке отображается заданный результат, если же условие не выполнено, то выводимый результат зависит уже от второго оператора.
- Для примера возьмем все ту же таблицу с выплатами премии к 8 марта. Но на этот раз, согласно условиям, размер премии зависит от категории работника. Женщины, имеющие статус основного персонала, получают бонус по 1000 рублей, а вспомогательный персонал получает только 500 рублей. Естественно, что мужчинам этот вид выплат вообще не положен независимо от категории.
- Первым условием является то, что если сотрудник — мужчина, то величина получаемой премии равна нулю. Если же данное значение ложно, и сотрудник не мужчина (т.е. женщина), то начинается проверка второго условия. Если женщина относится к основному персоналу, в ячейку будет выводиться значение «1000», а в обратном случае – «500». В виде формулы это будет выглядеть следующим образом:
«=ЕСЛИ(B6="муж.";"0"; ЕСЛИ(C6="Основной персонал"; "1000";"500"))»
. - Вставляем это выражение в самую верхнюю ячейку столбца «Премия к 8 марта».
- Как и в прошлый раз, «протягиваем» формулу вниз.
Пример использования «ЕСЛИ»
Теперь давайте рассмотрим конкретные примеры, где используется формула с оператором «ЕСЛИ».
- Имеем таблицу заработной платы. Всем женщинам положена премия к 8 марту в 1000 рублей. В таблице есть колонка, где указан пол сотрудников. Таким образом, нам нужно вычислить женщин из предоставленного списка и в соответствующих строках колонки «Премия к 8 марта» вписать по «1000». В то же время, если пол не будет соответствовать женскому, значение таких строк должно соответствовать «0». Функция примет такой вид:
«ЕСЛИ(B6="жен."; "1000"; "0")»
. То есть когда результатом проверки будет «истина» (если окажется, что строку данных занимает женщина с параметром «жен.»), то выполнится первое условие — «1000», а если «ложь» (любое другое значение, кроме «жен.»), то соответственно, последнее — «0». - Вписываем это выражение в самую верхнюю ячейку, где должен выводиться результат. Перед выражением ставим знак «=».
- После этого нажимаем на клавишу Enter. Теперь, чтобы данная формула появилась и в нижних ячейках, просто наводим указатель в правый нижний угол заполненной ячейки, жмем на левую кнопку мышки и, не отпуская, проводим курсором до самого низа таблицы.
- Так мы получили таблицу со столбцом, заполненным при помощи функции «ЕСЛИ».
Проверяем простое числовое условие с помощью функции IF (ЕСЛИ)
При использовании функции IF (ЕСЛИ) в Excel, вы можете использовать различные операторы для проверки состояния. Вот список операторов, которые вы можете использовать:
Если сумма баллов больше или равна “35”, то формула возвращает “Сдал”, иначе возвращается “Не сдал”.
Заключение
Одним из самых популярных и полезных инструментов в Excel является функция ЕСЛИ, которая проверяет данные на совпадение заданным нами условиям и выдает результат в автоматическом режиме, что исключает возможность ошибок из-за человеческого фактора. Поэтому, знание и умение применять этот инструмент позволит сэкономить время не только на выполнение многих задач, но и на поиски возможных ошибок из-за “ручного” режима работы.
Источники
- https://excelhack.ru/funkciya-if-esli-v-excel/
- https://statanaliz.info/excel/funktsii-i-formuly/neskolko-uslovij-funktsii-esli-eslimn-excel/
- https://mister-office.ru/funktsii-excel/function-if-excel-primery.html
- https://exceltable.com/funkcii-excel/funkciya-esli-v-excel
- https://MicroExcel.ru/operator-esli/
- https://vremya-ne-zhdet.ru/vba-excel/operatory-sravneniya/
- https://lumpics.ru/the-function-if-in-excel/
- http://on-line-teaching.com/excel/lsn024.html
- https://tvojkomp.ru/primery-usloviy-v-excel/
history 11 апреля 2013 г.
- Группы статей
- стандартные функции
Функция ЕСЛИ()
, английский вариант IF(),
используется при проверке условий. Например, =ЕСЛИ(A1>100;»Бюджет проекта превышен»;»ОК!»). В зависимости от значения в ячейке
А1
результат формулы будет либо «Бюджет превышен» либо «ОК!».
Функция ЕСЛИ() относится к наиболее часто используемым функциям. Поэтому рассмотрим ее подробно.
Синтаксис функции
ЕСЛИ(лог_выражение;значение_если_истина;[значение_если_ложь])
Функция имеет 3 аргумента.
Лог_выражение
— любое значение или выражение, принимающее значения ИСТИНА или ЛОЖЬ. Например, выражение A1>100. Если в ячейке А1 содержится значение 102, то выражение A1>100 вернет ИСТИНА, т.к. 102>100. Если в ячейке А1 содержится значение 88, то выражение вернет ЛОЖЬ, т.к. неравенство 88>100 неверно. Полностью формула может выглядеть так =ЕСЛИ(A1>100;»Бюджет проекта превышен»;»ОК!») Если в ячейке
A1
содержится значение большее 100, то формула вернет текстовое значение
Бюджет проекта превышен,
а если меньше 100 или равное 100, то будет выведено
ОК!
Других значений кроме ИСТИНА или ЛОЖЬ логическое выражение вернуть не может. Любое число кроме 0 в первом аргументе будет преобразовано в ИСТИНА, ноль — в ЛОЖЬ. Если ошибочно будет указано текстовое значение, то функция вернет ошибку #ЗНАЧ!.
Примечание
: Ошибка #ЗНАЧ! может быть также из-за ошибок в выражениях указанных во втором и третье аргументе.
Второй аргумент —
Значение_если_истина
и третий аргумент
значение_если_ложь
Как было показано выше, если логическое выражение (первый аргумент функции) принимает значение ИСТИНА, то функция возвращает значение из второго аргумента
значение_если_истина.
Соответственно, если логическое выражение принимает значение ЛОЖЬ, то функция возвращает значение из третьего аргумента
значение_если_ложь
.
Второй и третий аргумент могут быть любым значением (число или текст) или являться выражением (формулой с функциями). Например формула =ЕСЛИ(A1>100;0;А1*1%) позволяет вычислять премию для проектов, в которых не было превышения бюджета (>100). Если бюджет превышен (в А1 введено значение 200 или любое другое более 100), то формула вернет 0, если в А1 введено значение менее 100, то будет вычислено значение премии А1*1% (т.е. если в А1 число 90, то формула вернет 0,9).
Если в качестве второго и третьего аргументов введено выражение, то оно может содержать и функции, например: =ЕСЛИ(A1>100;СУММ(B1:B10);СУММ(C1:C10)) Т.е. если в ячейке
A1
содержится значение >100, то суммирование ведется по столбцу
B
, а если меньше или равно 100, то по столбцу
С
. Не забывайте, что при значении А1 = 100 в данном случае будет срабатывать выражение из аргумента
значение_если_ложь.
Аргумент
значение_если_ложь
можно опустить (не вводить), тогда при значении логического выражения =ЛОЖЬ будет выведено ЛОЖЬ. Например, если в А1 содержится 600, то формула =ЕСЛИ(A1>=1000;»Больше или равно 1000″) вернет просто ЛОЖЬ. Понятно, что при значении логического выражения =ИСТИНА будет выведено «Больше или равно 1000», т.е. второй аргумент функции ЕСЛИ() —
Значение_если_истина.
Вложенные ЕСЛИ (несколько условий)
Для построения более сложных проверок в одной формуле можно использовать несколько функций ЕСЛИ(). Для этого в качестве значений аргументов
значение_если_истина
и
значение_если_ложь
введите еще одно условие с функцией ЕСЛИ(). Например, для проверки в какой диапазон попадает значение из ячейки А8 запишите формулу
=ЕСЛИ(A8<5;1;ЕСЛИ(A8>10;3;2))
- Если значение из ячейки А8 менее 5, то будет выведено 1
- Если значение из ячейки А8 более 10, то будет выведено 3
- Если значение из ячейки А8 между 5 и 10 (включая 5 и 8), то будет выведено 2
Примечание
: В версии EXCEL 2007 можно использовать до 64 вложенных друг в друга функций ЕСЛИ(). Но, пожалуйста, не делайте так. Такой подход чреват ошибками.
Примечание
: Формулу =ЕСЛИ(A8<5;1;ЕСЛИ(A8>10;3;2)) можно переписать как =ЕСЛИ(A8>=5;ЕСЛИ(A8>10;3;2);1) или ЕСЛИ(A8>=5;ЕСЛИ(A8>10;3;2);1)
или более сложный вариант =ЕСЛИ(A8<5;1;ЕСЛИ(И(5 < A8;A8<10);2;3)). Последний вариант позволяет последовательно перебирать диапазоны изменения А8, но требует знания работы логических функций.
Формула =ЕСЛИ(A8<5;1;ЕСЛИ(A8>10;3;2)) работает следующим образом: сначала вычисляется логическое выражение A8<5. Если оно истинно, то выводится 1, вычисления завершены. Если оно ложно, т.е. А8>=5, то EXCEL переходит к вычислению выражения ЕСЛИ(A8>10;3;2). Опять сначала вычисляется логическое выражение A8>10. Если оно истинно, то выводится 3, вычисления завершены. Если оно ложно, то выводится 2, вычисления завершены.
Чтобы грамотно написать формулу с вложенными ЕСЛИ() следуйте следующим простым правилам:
1) Определитесь с диапазонами:
1.1) они не должны пересекаться. В примере выше — 3 диапазона и значение из А8 гарантированно попадет только в один из них. Было бы ошибкой написать формулу типа =ЕСЛИ(A8<5;1;ЕСЛИ(A8>10;3;ЕСЛИ(A8<3;2;4))). Области значений у выражений A8<5 и A8<3 пересекаются и крайне сложно безошибочно прописывать такие условия. Такая формула просто не верна. Очевидно, что в этом случае 4 диапазона: меньше 3; от 3 до 5; от 5 до 10 и больше 10. Как прописать такие условия написано ниже в этом разделе.
1.2.) диапазоны должны полностью охватывать нужную область значений. Очевидно, что в формуле =ЕСЛИ(A8<5;1;ЕСЛИ(A8>10;3;2)) на интересует вся числовая ось от минус бесконечности до +бесконечности. И все 3 диапазона полностью покрывают эту область.
1.3.) Не забудьте ставить знак равно, чтобы при значениях А8 совпадающих с границами интервалов не было неправильных вычислений. Например, если в формуле =ЕСЛИ(A8>=5;ЕСЛИ(A8>10;3;2);1) забыть указать знак = в логическом выражении A8>=5, то при А8=5 формула =ЕСЛИ(A8>5;ЕСЛИ(A8>10;3;2);1) вернет 1, тогда как исходная формула вернет 2.
Примечание:
В перечисленных выше случаях логические выражения вычисляются на основании одной переменной А8. Иногда нужно придумывать формулы с ЕСЛИ(), зависящие от 2-х и более ячеек: =ЕСЛИ(B8>=5;ЕСЛИ(A8>10;3;2);1). Это гораздо сложнее, но, конечно, возможно. Следуйте правилам 1.1)-1.3) и следите за диапазонами. Еще сложнее, если обе переменных являются зависимыми, т.е. например B8 вычисляется на основании А8. Написание таких формул требует предельной аккуратности и напрямую связано с корректностью формулирования самой задачи (возможно вы не продумали до конца как использовать такую сложную зависимость). Советую по возможности разбить вычисления на 2 или более формулы, чтобы проще контролировать результат вычисления.
2) Правильно записывайте логические выражения. Например, условие 5 < A8<10 в EXCEL не будет работать. В этом выражении фактически записано 2 условия. Нужно записать эти 2 условия по отдельности. Чтобы их объединить нужна функция И(): И(5 < A8;A8<10) Подробности в этой статье
https://excel2.ru/articles/funkciya-i-v-ms-excel-i
или потребуется переделать формулу с вложенными ЕСЛИ().
3) Используйте для наглядности построчное написание вложенных ЕСЛИ. Например, формулу =ЕСЛИ(A8<5;1;ЕСЛИ(A8>10;3;2)) в строке формул можно записать как
=ЕСЛИ(A8<5;1;
ЕСЛИ(A8>10;3;2))
Для этого поставьте курсор перед вторым ЕСЛИ(), нажмите и удерживайте клавишу ALT, нажмите ENTER.
4) для отладки вложенных ЕСЛИ вместо реальных вычислений (V8*10%-37500) используйте простые значения — последовательности 1; 2; 3 … Это покажет какой блок вложенных ЕСЛИ() срабатывает.
5) В ряде случаев от вложенных ЕСЛИ можно отказаться. Рассмотрим пример определения размера проекта от его бюджета
=ЕСЛИ(A1>=100;»Очень крупный проект»;
ЕСЛИ(A1>=90;»Крупный проект»;
ЕСЛИ(A1>=50;»Средний проект»;»Малый проект «)))
Вышеуказанную формулу можно усложнять и дальше, но есть другие подходы. Ниже приведено 2 эквивалентные формулы:
=ПРОСМОТР(A1;{0;50;90;100};{«Малый проект»;»Средний проект»;»Крупный проект»;»Очень крупный проект»})
=ВПР(A1;A3:B6;2)
Для функции ВПР() необходимо создать в диапазоне
A3:B6
таблицу значений:
Формула =ПРОСМОТР(A1;{0;50;90;100};{«Малый проект»;»Средний проект»;»Крупный проект»;»Очень крупный проект»}) выглядит необычно, но по сути второй аргумент {0;50;90;100}, как и третий аргумент {«Малый проект»;»Средний проект»;»Крупный проект»;»Очень крупный проект»} это запись содержимого 4-х ячеек. Вместо {0;50;90;100} можно записать ссылку на диапазон ячеек, содержащих 4 значения 0;50;90;100. Круглые скобки нужны, чтобы сообщить, что в функцию передается не одно значение, а целый массив.
Еще пример. Пусть требуется вывести разный текст (например «<0»; «=0» или «>0») в случае наличия в ячейке
А1
отрицательного значения, положительного значения или 0. Это можно сделать без вложенных ЕСЛИ():
=ПРОСМОТР(A1;{-1E+307;0;1E-307};{«<0″;»=0″;»>0″})
Примечание
: -1E+307 — это самое маленькое отрицательное число в EXCEL, 1E-307 — это самое маленькое положительное число. Таким образом задается 3 диапазона: от минус бесконечности до 0 (0 не включая); 0 (диапазон состоит только из одного значения 0); от 0 до +бесконечности (0 не включая).
Второй массив можно заменить ссылкой на диапазон, например для того чтобы вывести результат вычисления формул:
=ПРОСМОТР(A24;{-1E+307;0;1E-307};A27:A29)
Диапазон A27:A29 должен, понятно, содержать формулы (см. файл примера).
Опущен третий аргумент
[значение_если_ложь]
Третий аргумент функции не обязателен. Если логическое условие не выполнено, т.е. ЛОЖЬ, а третий аргумент функции не указан, то функция вернет также значение ЛОЖЬ. Например:
=ЕСЛИ(A1>100;»Бюджет превышен»)
Если в ячейке
A1
содержится значение 1, то вышеуказанная формула вернет значение ЛОЖЬ.
Сложные логические выражения
В аргументе
Лог_выражение
можно использовать как простые сравнения типа F1>10, так и более сложные конструкции на основе функций И(), ИЛИ(), НЕ() и их комбинаций.
Основное правило
— логические функции и их комбинации возвращают только одно из 2х логических значений: ЛОЖЬ или ИСТИНА.
Приведем несколько полезных примеров.
Формула =ЕСЛИ(ИЛИ(A1;A2);0;2) проверяет одновременность равенства значений А1 и А2 нулю. Если оба значения равны 0, то формула вернет 2. Во всех других случаях будет возвращен 0. А1 и А2 не должны быть пустыми ячейками.
Формула =ЕСЛИ(ИЛИ(A1=0;A2=0);0;2) проверяет равенство 0 хотя бы одного значения из А1 и А2.
Формула =ЕСЛИ(НЕ(A1>0);1;2) эквивалентна формуле =ЕСЛИ(A1<=0;1;2)
Вместо ИСТИНА или ЛОЖЬ в первом аргументе введено число
Т.к. значение ЛОЖЬ эквивалентно 0, то формулы =ЕСЛИ(0;»Бюджет превышен»;»ОК!») или (если в ячейке
A1
содержится значение 0) =ЕСЛИ(A1;»Бюджет превышен»;»ОК!») вернут
ОК!
Если в ячейке
A1
находится любое другое число кроме 0, то формула вернет
Бюджет превышен
. Такой подход удобен, когда проверяется равенство значения нулю значения ячейки.
Примечание
: чтобы убедиться, что логическое значение ЛОЖЬ соответствует 0 введите формулу =—А1=0. В А1 введите ЛОЖЬ. Формула вернет ИСТИНА. Отметим, что логическое значение ЛОЖЬ именно соответствует 0, но не равно 0, т.к. формула =А1=0 вернет ЛОЖЬ, следовательно логическое значение ЛОЖЬ не равно 0. Железная логика!
Примечание
: Двойное отрицание «—» — это просто математическая операция, которая приводит к преобразованию логического выражения в числовое, но не приводит к изменению самого значения. Двойное отрицание можно заменить сложением с 0 или возведением в первую степень: =(А1+0)=0.
Связь функции ЕСЛИ() с другими функциями использующие условия
EXCEL содержит также другие функции, которые можно применять для анализа данных с использованием условий. Например, для подсчета количества вхождений чисел в диапазоне ячеек используется функция СЧЁТЕСЛИ() , а для сложения значений, удовлетворяющих определенным условиям, используется функция СУММЕСЛИ() .
Функция ЕСЛИ() , как альтернативный вариант, может быть также использована для подсчета и сложения значений с использованием условий. Ниже приведены иллюстрирующие примеры.
Пусть данные находятся в диапазоне
A6:A11
(см. файл примера)
Подсчитаем сумму значений, которые больше 10 с помощью функции СУММЕСЛИ() , записав =СУММЕСЛИ(A6:A11;»>10″) . Аналогичный результат (23) можно получить с помощью
формулы массива
=СУММ(ЕСЛИ(A6:A11>10;A6:A11)) (для ввода формулы в ячейку вместо
ENTER
нужно нажать
CTRL+SHIFT+ENTER
)
Теперь подсчитаем количество вхождений чисел больше 10 в диапазоне ячеек
A6:A11
=СЧЁТЕСЛИ(A6:A11;»>10″) . Аналогичный результат (2) можно получить с помощью
формулы массива
=СЧЁТ(ЕСЛИ(A6:A11>10;A6:A11))
Теперь, когда принцип понятен, с помощью функции ЕСЛИ() можно конструировать и другие формулы с условиями. Например, нахождение минимального значения среди чисел больше 10: =МИН(ЕСЛИ(A6:A11>10;A6:A11))