Как объединить формулы если в excel

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

  • =ЕСЛИ(это истинно, то сделать это, в противном случае сделать что-то еще)

Поэтому у функции ЕСЛИ возможны два результата. Первый результат возвращается в случае, если сравнение истинно, второй — если сравнение ложно.

Заявления ЕСЛИ являются исключительно надежными и являются основой для многих моделей электронных таблиц, но они также являются основной причиной многих проблем с электронными таблицами. В идеале утверждение ЕСЛИ должно применяться к минимальным условиям, таким как «Мужчина/женщина», «Да/Нет/Возможно», но иногда может потребоваться оценить более сложные сценарии, для которых требуется вложенное* более 3 функций ЕСЛИ.

* «Вложенность» означает объединение нескольких функций в одной формуле.

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

Синтаксис

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

Например:

  • =ЕСЛИ(A2>B2;»Превышение бюджета»;»ОК»)

  • =ЕСЛИ(A2=B2;B4-A4;»»)

Имя аргумента

Описание

лог_выражение   

(обязательный)

Условие, которое нужно проверить.

значение_если_истина   

(обязательный)

Значение, которое должно возвращаться, если лог_выражение имеет значение ИСТИНА.

значение_если_ложь   

(необязательный)

Значение, которое должно возвращаться, если лог_выражение имеет значение ЛОЖЬ.

Примечания

Excel позволяет использовать до 64 вложенных функций ЕСЛИ, но это вовсе не означает, что так и надо делать. Почему?

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

  • Работа с множественными операторами ЕСЛИ может оказаться чрезвычайно трудоемкой, особенно если вы вернетесь к ним через какое-то время и попробуете разобраться, что пытались сделать вы или, и того хуже, кто-то другой.

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

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

Примеры

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

Сложный оператор ЕСЛИ с вложением — ячейка E2 содержит формулу =ЕСЛИ(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"))))))))))))

  • =ЕСЛИ(D2>89;»A»;ЕСЛИ(D2>79;»B»;ЕСЛИ(D2>69;»C»;ЕСЛИ(D2>59;»D»;»F»))))

    Этот сложный оператор с вложенными функциями ЕСЛИ следует простой логике:

  1. Если тестовых баллов (в ячейке D2) больше 89, учащийся получает оценку A.

  2. Если тестовых баллов больше 79, учащийся получает оценку B.

  3. Если тестовых баллов больше 69, учащийся получает оценку C.

  4. Если тестовых баллов больше 59, учащийся получает оценку D.

  5. В противном случае учащийся получает оценку 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 попытается помочь вам понять, что куда идет, окрашивая разными цветами части формулы. Например, во время редактирования показанной выше формулы при перемещении курсора за каждую закрывающую скобку «)» тем же цветом будет окрашиваться соответствующая открывающая скобка. Это особенно удобно в сложных вложенных формулах, когда вы пытаетесь выяснить, достаточно ли в них парных скобок.

Дополнительные примеры

Ниже приведен распространенный пример расчета комиссионных за продажу в зависимости от уровней дохода.

Ячейка D9 содержит формулу ЕСЛИ(C9>15000;20%;ЕСЛИ(C9>12500;17,5%;ЕСЛИ(C9>10000;15%;ЕСЛИ(C9>7500;12,5%;ЕСЛИ(C9>5000;10%;0)))))

  • =ЕСЛИ(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+ВВОД перед текстом, который хотите перенести на другую строку.

Перед вами пример сценария для расчета комиссионных с неправильной логикой:

Ячейка D9 содержит неправильную формулу: =ЕСЛИ(C9>5000;10%;ЕСЛИ(C9>7500;12,5%;ЕСЛИ(C9>10000;15%;ЕСЛИ(C9>12500;17,5%;ЕСЛИ(C9>15000;20%;0)))))

Видите, что не так? Сравните порядок сравнения доходов с предыдущим примером. Как это будет происходить? Правильно, она будет снизу вверх (от 5 000 до 15 000 рублей), а не наоборот. Но почему это так важно? Это очень важно, так как формула не может пройти первую оценку для любого значения стоимостью более 5 000 рублей. Предположим, что вы получили доход в размере 12 500 долларов США— если вы получили 10 %, так как она больше 5 000 рублей, и она остановится на этом. Это может быть чрезвычайно проблемным, так как во многих ситуациях такие типы ошибок остаются незамеченными до тех пор, пока они не оказывают отрицательного влияния. Так что же можно сделать, зная о том, что при сложных вложенных заявлениях ЕСЛИ существуют серьезные недостатки? В большинстве случаев вместо создания сложной формулы с помощью функции ЕСЛИ можно использовать функцию ВЛОП. С помощью ВLOOKUPсначала нужно создать таблицу для справки:

Ячейка D2 содержит формулу =ВПР(C2;C5:D17;2;ИСТИНА)

  • =ВПР(C2;C5:D17;2;ИСТИНА)

В этой формуле предлагается найти значение ячейки C2 в диапазоне C5:C17. Если значение найдено, возвращается соответствующее значение из той же строки в столбце D.

Ячейка C9 содержит формулу =ВПР(B9;B2:C6;2;ИСТИНА)

  • =ВПР(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 (по категориям)

Объединение нескольких условий ЕСЛИ в одной формуле

lolkisonik

Дата: Понедельник, 29.02.2016, 18:06 |
Сообщение № 1

Группа: Пользователи

Ранг: Новичок

Сообщений: 12


Репутация:

0

±

Замечаний:
40% ±


Excel 2010

Люди добрые подскажите, как объединить несколько условий если в одно.
Пример:
=Если(A2-B2<5000;B1)
=Если(A2-C2<5000;C1)
=Если(A2-D2<5000;D1)
Надо еще чтоб значение через запятую выводилось (B1,C1,D1)

 

Ответить

Manyasha

Дата: Понедельник, 29.02.2016, 18:17 |
Сообщение № 2

Группа: Модераторы

Ранг: Старожил

Сообщений: 2198


Репутация:

898

±

Замечаний:
0% ±


Excel 2010, 2016

lolkisonik, так?

Код

=ЕСЛИ(A2-B2<5000;B1&», «;»»)&ЕСЛИ(A2-C2<5000;C1&», «;»»)&ЕСЛИ(A2-D2<5000;D1&», «;»»)

UPD
лучше так (чтобы последняя запятая убивалась):

Код

=ПОДСТАВИТЬ(СЖПРОБЕЛЫ(ЕСЛИ(A2-B2<5000;B1&» «;»»)&ЕСЛИ(A2-C2<5000;C1&» «;»»)&ЕСЛИ(A2-D2<5000;D1&» «;»»));» «;», «)

Если не то, показывайте пример в файле.


ЯД: 410013299366744 WM: R193491431804

Сообщение отредактировал ManyashaПонедельник, 29.02.2016, 18:26

 

Ответить

lolkisonik

Дата: Понедельник, 29.02.2016, 20:57 |
Сообщение № 3

Группа: Пользователи

Ранг: Новичок

Сообщений: 12


Репутация:

0

±

Замечаний:
40% ±


Excel 2010

Спасибо все работает, только теперь другой вопрос:
можно сделать так что б значение(B1,C1,D1) не менялись при копировании на (b2,C2,D2)
[moder]Вы зачем рапортуете? Эта кнопка не для того сделана.

Сообщение отредактировал _Boroda_Понедельник, 29.02.2016, 21:05

 

Ответить

китин

Дата: Понедельник, 29.02.2016, 21:03 |
Сообщение № 4

Группа: Модераторы

Ранг: Экселист

Сообщений: 6973


Репутация:

1063

±

Замечаний:
0% ±


Excel 2007;2010;2016

а значок $ поставить не вариант? типа $B$1.?
а это ведь уже другой вопрос.а по правилам один вопрос одна тема !


Не судите очень строго:я пытаюсь научиться
ЯД 41001877306852

Сообщение отредактировал китинПонедельник, 29.02.2016, 21:04

 

Ответить

Gustav

Дата: Понедельник, 29.02.2016, 21:55 |
Сообщение № 5

Группа: Друзья

Ранг: Старожил

Сообщений: 2398


Репутация:

986

±

Замечаний:
0% ±


начинал с Excel 4.0, видел 2.1

[offtop]В чём ВАЖНОСТЬ этой темы? Почему она в таком топе?


МОИ: Ник, Tip box: 41001663842605

 

Ответить

китин

Дата: Понедельник, 29.02.2016, 21:58 |
Сообщение № 6

Группа: Модераторы

Ранг: Экселист

Сообщений: 6973


Репутация:

1063

±

Замечаний:
0% ±


Excel 2007;2010;2016


Не судите очень строго:я пытаюсь научиться
ЯД 41001877306852

 

Ответить

m-akhmedveliev

Дата: Суббота, 05.03.2016, 09:35 |
Сообщение № 7

Группа: Пользователи

Ранг: Прохожий

Сообщений: 1


Репутация:

0

±

Замечаний:
0% ±


Excel 2007

Всем привет! Подскажите пожалуйста формулу: мне нужно, например:
Если значение (Текст) такой-то такой-то в одной ячейке, и значение (Текст) такой-то такой-то во второй ячейке, то значение в третей такое

 

Ответить

Nic70y

Дата: Суббота, 05.03.2016, 10:07 |
Сообщение № 8

Группа: Друзья

Ранг: Экселист

Сообщений: 8136


Репутация:

1999

±

Замечаний:
0% ±


Excel 2010

Так и напишите

Код

=ЕСЛИ(И(A1=»такой-то такой-то»;B2=»такой-то такой-то»);»такое-то»)

, а если нет, то:

Код

=ЕСЛИ(И(A1=»такой-то такой-то»;B2=»такой-то такой-то»);»такое-то»;»никакое»)


ЮMoney 41001841029809

Сообщение отредактировал Nic70yСуббота, 05.03.2016, 17:04

 

Ответить

Василинка-Малинка

Дата: Понедельник, 07.03.2016, 08:32 |
Сообщение № 9

Группа: Пользователи

Ранг: Прохожий

Сообщений: 7


Репутация:

0

±

Замечаний:
0% ±


Excel 2007

У меня вопрос по формуле ЕСЛИ, можно здесь спросить или новую тему открывать? А то у вас тут все строго, даже страшновато немного, поставят в бан, а мне ответ нужен.
[moder]Да, у нас тут строго. Строго по Правилам форума[/moder]

Сообщение отредактировал PelenaПонедельник, 07.03.2016, 09:53

 

Ответить

Василинка-Малинка

Дата: Среда, 09.03.2016, 11:08 |
Сообщение № 10

Группа: Пользователи

Ранг: Прохожий

Сообщений: 7


Репутация:

0

±

Замечаний:
0% ±


Excel 2007

Нужно посчитать сумму премии с несколькими условиями. Если процент (желтая ячейка) от 90 до 92% от выполненного плана, то премия будет 0,1% от общей суммы (синяя ячейка), если 92% от плана, то 0,2% от общей суммы и т.д. Условия написаны справа.
Можно это все в 1 ячейки написать?
[moder]Почитайте п 5q Правил форума.
Создайте свою тему.[/moder]

К сообщению приложен файл:

3730714.xlsx
(39.9 Kb)

Сообщение отредактировал ManyashaСреда, 09.03.2016, 11:18

 

Ответить

maksimusus

Дата: Четверг, 24.03.2016, 16:31 |
Сообщение № 11

Группа: Пользователи

Ранг: Новичок

Сообщений: 17


Репутация:

0

±

Замечаний:
0% ±


Excel 2007

Добрый день. Есть данные:
до 1 000 000 — 0.0354%
свыше 1 000 000 до 5 000 000 — 0.0295%
свыше 5 000 000 до 10 000 000 — 0.0236%
свыше 10 000 000 до 20 000 000 — 0.0177%
свыше 20 000 000 до 50 000 000 — 0.01534%
свыше 50 000 000 до 100 000 000 — 0.0118%
свыше 100 000 000 — 0,00944%
Вопрос как внести данные условия формулой в одну ячейку.. Что б эксель видя число в ячейке условно B1, в ячейке C1 ставил соответствующее данным процентное число. запутался с «ЕСЛИ»..
[moder]Приложите пример в файле[/moder]

в ячейку » процент комиссии» должен выставляться, процент соответствующий Сумма 1 + Сумма 2 в свой строке.

К сообщению приложен файл:

2900524.xls
(28.0 Kb)

Сообщение отредактировал maksimususЧетверг, 24.03.2016, 16:57

 

Ответить

Nic70y

Дата: Четверг, 24.03.2016, 16:45 |
Сообщение № 12

Группа: Друзья

Ранг: Экселист

Сообщений: 8136


Репутация:

1999

±

Замечаний:
0% ±


Excel 2010

вариант

Код

=ПРОСМОТР(B1;{0;1000000,01;5000000,01;10000000,01;20000000,01;50000000,01};{0,0354;0,0295;0,236;0,0177;0,0118;0,00944})%


ЮMoney 41001841029809

 

Ответить

_Boroda_

Дата: Четверг, 24.03.2016, 16:49 |
Сообщение № 13

Группа: Модераторы

Ранг: Местный житель

Сообщений: 16618


Репутация:

6465

±

Замечаний:
0% ±


2003; 2007; 2010; 2013 RUS

Из той же серии

Код

=ВПР((B2-0,1)%%%;{0;0,000354:1;0,000295:5;0,000236:10;0,000177:20;0,0001534:50;0,000118:100;0,0000944};2)


Скажи мне, кудесник, любимец ба’гов…
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995

 

Ответить

maksimusus

Дата: Четверг, 24.03.2016, 16:55 |
Сообщение № 14

Группа: Пользователи

Ранг: Новичок

Сообщений: 17


Репутация:

0

±

Замечаний:
0% ±


Excel 2007

в ячейку » процент комиссии» должен выставляться, процент соответствующий Сумма 1 + Сумма 2 в свой строке.

К сообщению приложен файл:

4055207.xls
(28.0 Kb)

 

Ответить

maksimusus

Дата: Четверг, 24.03.2016, 17:00 |
Сообщение № 15

Группа: Пользователи

Ранг: Новичок

Сообщений: 17


Репутация:

0

±

Замечаний:
0% ±


Excel 2007

_Boroda_, спасибо!

 

Ответить

maksimusus

Дата: Четверг, 24.03.2016, 17:01 |
Сообщение № 16

Группа: Пользователи

Ранг: Новичок

Сообщений: 17


Репутация:

0

±

Замечаний:
0% ±


Excel 2007

Nic70y, спасибо!

 

Ответить

vikttur

Дата: Четверг, 24.03.2016, 17:24 |
Сообщение № 17

Группа: Друзья

Ранг: Участник клуба

Сообщений: 2941

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

Да, и редактировать диапазоны в случае необходимости проще.

К сообщению приложен файл:

8968665.xls
(29.0 Kb)

Сообщение отредактировал viktturЧетверг, 24.03.2016, 17:31

 

Ответить

maksimusus

Дата: Пятница, 25.03.2016, 01:06 |
Сообщение № 18

Группа: Пользователи

Ранг: Новичок

Сообщений: 17


Репутация:

0

±

Замечаний:
0% ±


Excel 2007

vikttur, спасибо, тоже вариант удобный, особенно если менять исходные данные

 

Ответить

Skip

Дата: Суббота, 26.03.2016, 19:57 |
Сообщение № 19

Группа: Пользователи

Ранг: Новичок

Сообщений: 28


Репутация:

1

±

Замечаний:
0% ±


Excel 2003

Здравствуйте.
Очень много знаний черпаю с данного ресурса (спасибо ВСЕМ).
Возникли трудности в написании (дополнении) формулы.
Кто чем может помогите плиз…
инф. в прикреплённом фале)
[moder]Вопрос не относится к теме «Объединение Нескольких значений ЕСЛИ в одно». Ответ удален[/moder]

К сообщению приложен файл:

Help.xls
(16.0 Kb)

Сообщение отредактировал PelenaСуббота, 26.03.2016, 20:13

 

Ответить

StoTisteg

Дата: Суббота, 26.03.2016, 20:08 |
Сообщение № 20

Группа: Авторы

Ранг: Старожил

Сообщений: 1161


Репутация:

103

±

Замечаний:
0% ±


Excel 2010

Ответ удален


Интуитивно понятный код — это когда интуитивно понятно, что это код.

Сообщение отредактировал PelenaСуббота, 26.03.2016, 20:13

 

Ответить

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

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

Синтаксис функции ЕСЛИ с одним условием

Синтаксис оператора в Excel – строение функции, необходимые для ее работы данные.

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

Разберем синтаксис функции:

Логическое_выражение – ЧТО оператор проверяет (текстовые либо числовые данные ячейки).

Значение_если_истина – ЧТО появится в ячейке, когда текст или число отвечают заданному условию (правдивы).

Значение,если_ложь – ЧТО появится в графе, когда текст или число НЕ отвечают заданному условию (лживы).

Пример:

Логическая функция ЕСЛИ.

Оператор проверяет ячейку А1 и сравнивает ее с 20. Это «логическое_выражение». Когда содержимое графы больше 20, появляется истинная надпись «больше 20». Нет – «меньше или равно 20».

Внимание! Слова в формуле необходимо брать в кавычки. Чтобы Excel понял, что нужно выводить текстовые значения.

Еще один пример. Чтобы получить допуск к экзамену, студенты группы должны успешно сдать зачет. Результаты занесем в таблицу с графами: список студентов, зачет, экзамен.

Логический оператор в таблице.

Обратите внимание: оператор ЕСЛИ должен проверить не цифровой тип данных, а текстовый. Поэтому мы прописали в формуле В2= «зач.». В кавычки берем, чтобы программа правильно распознала текст.



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

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

Синтаксис будет выглядеть следующим образом:

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

Здесь оператор проверяет два параметра. Если первое условие истинно, то формула возвращает первый аргумент – истину. Ложно – оператор проверяет второе условие.

Примеры несколько условий функции ЕСЛИ в Excel:

Вложение логических функций.

Таблица для анализа успеваемости. Ученик получил 5 баллов – «отлично». 4 – «хорошо». 3 – «удовлетворительно». Оператор ЕСЛИ проверяет 2 условия: равенство значения в ячейке 5 и 4.

2 условия оператора ЕСЛИ.

В этом примере мы добавили третье условие, подразумевающее наличие в табеле успеваемости еще и «двоек». Принцип «срабатывания» оператора ЕСЛИ тот же.

Расширение функционала с помощью операторов «И» и «ИЛИ»

Когда нужно проверить несколько истинных условий, используется функция И. Суть такова: ЕСЛИ а = 1 И а = 2 ТОГДА значение в ИНАЧЕ значение с.

Функция ИЛИ проверяет условие 1 или условие 2. Как только хотя бы одно условие истинно, то результат будет истинным. Суть такова: ЕСЛИ а = 1 ИЛИ а = 2 ТОГДА значение в ИНАЧЕ значение с.

Функции И и ИЛИ могут проверить до 30 условий.

Пример использования оператора И:

Пример логического оператора И.

Пример использования функции ИЛИ:

Пример логического оператора ИЛИ.

Как сравнить данные в двух таблицах

Пользователям часто приходится сравнить две таблицы в Excel на совпадения. Примеры из «жизни»: сопоставить цены на товар в разные привозы, сравнить балансы (бухгалтерские отчеты) за несколько месяцев, успеваемость учеников (студентов) разных классов, в разные четверти и т.д.

Чтобы сравнить 2 таблицы в Excel, можно воспользоваться оператором СЧЕТЕСЛИ. Рассмотрим порядок применения функции.

Для примера возьмем две таблицы с техническими характеристиками разных кухонных комбайнов. Мы задумали выделение отличий цветом. Эту задачу в Excel решает условное форматирование.

Исходные данные (таблицы, с которыми будем работать):

Две таблицы для сравнения.

Выделяем первую таблицу. Условное форматирование – создать правило – использовать формулу для определения форматируемых ячеек:

Условное форматирование в таблице.

В строку формул записываем: =СЧЕТЕСЛИ (сравниваемый диапазон; первая ячейка первой таблицы)=0. Сравниваемый диапазон – это вторая таблица.

Условия для форматирования ячеек.

Чтобы вбить в формулу диапазон, просто выделяем его первую ячейку и последнюю. «= 0» означает команду поиска точных (а не приблизительных) значений.

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

Выделяем вторую таблицу. Условное форматирование – создать правило – использовать формулу. Применяем тот же оператор (СЧЕТЕСЛИ).

Логический оператор СЧЕТЕСЛИ.

Скачать все примеры функции ЕСЛИ в Excel

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

Логическая функция ЕСЛИ в Экселе – одна из самых востребованных. Она возвращает результат (значение или другую формулу) в зависимости от условия.

Функция имеет следующий синтаксис.

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

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

значение_если_истина – значение или формула, которое возвращается при наступлении указанного в первом параметре события.

значение_если_ложь – это альтернативное значение или формула, которая возвращается при невыполнении условия. Данное поле не обязательно заполнять. В этом случае при наступлении альтернативного события функция вернет значение ЛОЖЬ.

Очень простой пример. Нужно проверить, превышают ли продажи отдельных товаров 30 шт. или нет. Если превышают, то формула должна вернуть «Ок», в противном случае – «Удалить». Ниже показан расчет с результатом.

Функция Excel ЕСЛИ с одним условием

Продажи первого товара равны 75, т.е. условие о том, что оно больше 30, выполняется. Следовательно, функция возвращает то, что указано в следующем поле – «Ок». Продажи второго товара менее 30, поэтому условие (>30) не выполняется и возвращается альтернативное значение, указанное в третьем поле. В этом вся суть функции ЕСЛИ. Протягивая расчет вниз, получаем результат по каждому товару.

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

Прогноз остатков

Пока все логично, но смущают минусы. Разве бывают отрицательные остатки? Нет, конечно. Запасы не могут быть ниже нуля. Чтобы прогноз был корректным, нужно отрицательные значения заменить нулями. Здесь отлично поможет формула ЕСЛИ. Она будет проверять полученное по прогнозу значение и если оно окажется меньше нуля, то принудительно выдаст ответ 0, в противном случае — результат расчета, т.е. некоторое положительное число. В общем, та же логика, только вместо значений используем формулу в качестве условия.

Функция ЕСЛИ для задания условия в формуле

В прогнозе запасов больше нет отрицательных значений, что в целом очень неплохо.

Формулы Excel ЕСЛИ также активно используют в формулах массивов. Здесь мы не будем далеко углубляться. Заинтересованным рекомендую прочитать статью о том, как рассчитать максимальное и минимальное значение по условию. Правда, расчет в той статье более не актуален, т.к. в Excel 2016 появились функции МИНЕСЛИ и МАКСЕСЛИ. Но для примера очень полезно ознакомиться – пригодится в другой ситуации.

Формула ЕСЛИ в Excel – примеры нескольких условий

Довольно часто количество возможных условий не 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 и более.

При написании формулы легко запутаться, поэтому рекомендуется смотреть на всплывающую подсказку.

Подсказка функции

В конце нужно обязательно закрыть все скобки, иначе эксель выдаст ошибку

Ошибка из-за нехватки скобки

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

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

В MS Excel 2016 появилась функция ЕСЛИМН, ради которой и написана вся эта статья. Это та же ЕСЛИ, только заточенная специально для проверки множества условий. Теперь не нужно сто раз писать ЕСЛИ и считать открытые скобки. Достаточно перечислить условия и в конце закрыть одну скобку.

Работает следующим образом. Возьмем пример выше и воспользуемся новой формулой Excel ЕСЛИМН.

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

Как видно, запись формулы выглядит гораздо проще и понятнее.

Стоит обратить внимание на следующее. Условия по-прежнему перечисляем в правильном порядке, чтобы не произошло ненужного перекрытия диапазонов. Последнее альтернативное условие, в отличие от обычной ЕСЛИ, также должно быть обязательно указано. В ЕСЛИ задается только альтернативное значение, которое наступает, если не выполняется ни одно из перечисленных условий. Здесь же нужно указать само условие, которое в нашем случае было бы B2>=1. Однако этого можно избежать, если в поле с условием написать ИСТИНА, указывая тем самым, что, если не выполняются ранее перечисленные условия, наступает ИСТИНА и возвращается последнее альтернативное значение.

Теперь вы знаете, как пользоваться функцией ЕСЛИ в Excel, а также ее более современным вариантом для множества условий ЕСЛИМН. 

Поделиться в социальных сетях:

Не обязательно искать целое слово, можно ограничиться началом или окончанием (при условии, что фрагменты уникальны).

=МИН(ЕСЛИ(ПСТР(A2;8;3)={"Рез";"Дор";"Под";"На ";"Изм"};{1;2;3;4;5}))

Если текст перед искомым не всегда одинаков, можно искать разделитель — запятую:

=МИН(ЕСЛИ(ПСТР(A2;ПОИСК(",";A2)+2;3)={"Рез";"Дор";"Под";"На ";"Изм"};{1;2;3;4;5}))

Если ориентироваться на последнее слово, то текст перед этим словом не имеет значения — заменить в формуле ПСТР на поиск текста справа:

=МИН(ЕСЛИ(ПРАВБ(A2;3)={"тат";"тка";"лен";"тке";"ние"};{1;2;3;4;5}))

При отсутствии искомых результат — ноль.

-------------------------------------------

Варианты UDF

' присвоение номера найденному в тексте слову   
Function fStatus(r1 As Range) As Long
    Dim ArrWord()
    Dim s, j As Long
        ' готовим упорядоченный список слов
        ArrWord = Array("Результат", "Доработка", "Подготовлен", "На разработке", "Изменение")

        For Each s In ArrWord
            j = j + 1 ' счетчик значений
            If r1.Value Like "*" & s & "*" Then _
                    fStatus = j: Exit Function ' если слово в тексте найдено, выходим
        Next s
    End Function

' присвоение номера второму слову текста
Function fStatus(r1 As Range) As Long
    Select Case Split(r1.Value, " ")(1)
    Case "Результат": fStatus = 1
    Case "Доработка": fStatus = 2
    Case "Подготовлен": fStatus = 3
    Case "На разработке": fStatus = 4
    Case "Изменение": fStatus = 5
    End Select
End Function

Функцию разместить в редакторе VBA (войти — Alt+F11) в общем модуле.

В ячейку B2 вписать формулу (принимаем, что тексты в А2 и ниже):

=fStatus(B2)

Размножить на нужный диапазон

Недостаток функций пользователя — волатитьность (пересчитываются при любых изменениях на листе)

Понравилась статья? Поделить с друзьями:

А вот еще интересные статьи:

  • Как объединить текст в ячейках в excel через запятую
  • Как объединить текст в ячейках в excel с пробелами
  • Как объединить текст в ячейках в excel в таблице
  • Как объединить текст в ячейках в excel 2010
  • Как объединить текст в ячейках excel в одну ячейку

  • 0 0 голоса
    Рейтинг статьи
    Подписаться
    Уведомить о
    guest

    0 комментариев
    Старые
    Новые Популярные
    Межтекстовые Отзывы
    Посмотреть все комментарии