Как да приложите изявлението на Excel IF с множество условия в обхвата

  • Споделя Това
Hugh West

Днес ще ви покажа как можете да приложите Excel IF изявление с множество условия във всеки диапазон.

Изтегляне на работна тетрадка за практика

Докато четете тази статия, можете да изтеглите следната работна книга за упражнения.

Изявление IF с множество условия в произволен диапазон.xlsx

Как работи изявлението IF в Excel във всеки диапазон?

Преди да преминем към основната дискусия, нека ви представим днешния набор от данни. Mars Group .

Имаме Имена на служителите , техните Начални дати , и Заплати в колони B , C и D съответно.

Помислете за момент, че началникът на Mars Group иска да вземе решение. Което е - ако средната заплата на служителите му е по-малка от $25000 , той ще увеличи заплатата на всеки служител с $5000 .

Но въпросът е как може да стигне до това решение?

Сайтът IF функция на Excel ще ви бъде полезна тук. Просто напишете тази формула във всяка клетка на работния лист и вижте резултата:

=IF(AVERAGE(D5:D20)<25000, "Увеличаване", "Не увеличавайте")

Вижте, Excel's IF първо е определила дали средната заплата е по-малка от $25000 или не. Когато види, че средната заплата е не по-малка от $25000 , тя ви посъветва да не увеличавате заплатата.

Така че можем да видим, че IF функцията приема три аргумента:

  • Един критерий
  • Ако критерият е изпълнен, се показва един изход.
  • Ако критерият не е изпълнен, се показва един изход (по избор. По подразбиране е "FALSE" )

Накратко, IF Функцията приема един критерий и два изхода. Тя връща първия изход, ако критерият е изпълнен, и връща втория, ако критерият не е изпълнен.

Синтаксисът е:

=IF(logical_test,value_if_true,[value_if_false])

Надявам се, че вече сте разбрали как IF функцията на Excel работи с едно условие.

5 примера за прилагане на изявлението IF на Excel с множество условия във всеки диапазон

Сега нека се опитаме да работим с множество условия, като използваме IF в Excel за даден диапазон. В тази част ще видим 5 подходящи примера.

1. Прилагане на изявление IF с множество условия от типа OR

i. Условия за една стойност

Нека помислим за момент, че началникът на Mars Group внася известна гъвкавост в решението си.

Той ще увеличи заплатата на всеки служител, ако средната заплата е по-малка от $25000 , или най-ниската заплата на служителите е по-малка от $20000 .

⊕ Заобикаляне на проблема:

  • Виждаме, че тук има две условия. Но това са условия от типа OR. Това означава, че условието е изпълнено, ако е изпълнено едно от двете условия.
  • Използване на IF за този тип множествени условия е доста лесно. Просто обвийте двете условия в Функция ИЛИ на Excel.
  • Формулата, която ще използваме тук, е:
=IF(OR(AVERAGE(D5:D20)<25000,MIN(D5:D20)<20000), "Увеличаване", "Не увеличавайте")

  • Вижте, този път Excel препоръча да увеличим заплатата.

Обяснение на формулата:

Нека разложим формулата тук.

  • OR(AVERAGE(D5:D20)<25000,MIN(D5:D20)<20000)

Той връща TRUE ако е изпълнен един или и двата критерия. В противен случай се връща ЛЪЖА. В този случай, ИЛИ(СРЕДНО(D5:D20) <25000,MIN(D5:D20)<20000has returned TRUE защото средната заплата е не по-малка от $25000 , но най-ниската заплата е по-малка от $20000 .

Резултат: TRUE

  • Така формулата става: =IF(TRUE, "Увеличаване", "Не увеличавайте")

Както е TRUE вътре в IF функцията връща първия резултат - " Увеличаване на ".

Резултат: "Увеличаване"

  • Ако разбирате това, можете ли да ми кажете каква ще бъде формулата, за да се получи " Да ", ако най-високата заплата е по-голяма от $40000 или най-ниската заплата е по-малка от $20000 , в противен случай " Не "?

    Да, прави сте. Формулата ще бъде:

=IF(OR(MAX(D5:D20)>40000,MIN(D5:D20)<20000),"Yes","No")

ii. Условия за диапазон от стойности

Сега разгледайте друг сценарий.

Началникът на Mars Group реши, че ще увеличи заплатите на служителите, чиито настоящи заплати са по-ниски от $25000 , или които са започнали работа преди 1/1/2015 .

Но как може да идентифицира тези служители?

⊕ Заобикаляне на проблема:

  • Вместо да използвате само една препратка към клетка в IF можете да използвате набор от препратки към клетки във функцията.
  • Вижте формулата по-долу.
=IF(OR($D5<25000,$C5

  • Тук съм вмъкнал формулата в първата клетка на новата колона, Клетка F4 .
  • И след това плъзна Дръжка за пълнене през останалите клетки.
  • Тя връща имената на всички служители, чиито заплати са по-малки от $25000 , или които са започнали работа преди 01 януари 2015 г. .
  • Ако се вгледате внимателно, ще откриете, че вместо вмъкване на единична препратка към клетка в IF вмъкнах набор от препратки към клетки ( $D$4:$D$19 ) в рамките на функцията.

    Разбира се, можете да го направите. И ще провери критериите един по един за всяка клетка от обхвата.

Обяснение на формулата:

За да разберете по-добре формулата, нека да я разделим.

  • ИЛИ($D5<25000,$C5 ="" strong="">

Той проверява Клетка D5 и Клетка C5 и връща TRUE ако някоя от заплатите е по-малка от $25000 или началната дата е по-малка от 01 януари 2015 г. .

Резултат: ИСТИНА.

  • Така формулата става: =IF(TRUE,B5,"")

За TRUE в обхвата на критериите, връща съдържанието на съответната клетка от Колона B , което означава името на служителя, и за всеки FALSE , тя връща празна клетка. Използвахме Абсолютна референция на клетката тук, защото не искаме да променяме референциите на клетките, когато плъзгаме Дръжка за пълнене .

Резултат: "Стив Смит".

Забележка:

Може да искате да премахване на празните клетки от списъка , което означава, че може да искате само списък на служителите, чиито заплати трябва да бъдат увеличени. За съжаление не можете да направите това, като използвате само IF Един от начините да се постигне това е като се използва функцията Функция FILTER на Excel.

Прочетете още: Excel VBA: Комбинирани If и Or (3 примера)

2. Прилагане на изречението IF с множество условия от типа AND

Можем също така да използваме Excel IF за множество И условия във всеки диапазон.

i. Условия за една стойност

Ако сте разбрали добре предишния раздел, можете ли да дадете отговор на друг въпрос?

Каква ще бъде формулата, ако шефът на компанията иска да увеличи заплатата на всеки служител, ако средната заплата е по-малка от $25000 а най-ниската заплата е $20000 ?

⊕ Заобикаляне на проблема:

  • Просто обвийте двете условия в Функция AND на мястото на ИЛИ функция.
  • Точно така:
=IF(AND(AVERAGE(D5:D20)<25000,MIN(D5:D20)<20000), "Увеличаване", "Не увеличавайте")

  • Вижте, този път Excel предложи да не увеличаваме заплатата, защото и двете условия, средна заплата по-малка от $25000 и най-ниска заплата, по-малка от $20000 , не са изпълнени. Изпълнено е само едно условие.
  • Ако искате да научите повече подробности за формулата, преминете към раздел 1 на Пример 1 .

ii. Условия за диапазон от стойности

Началникът на Mars Group всъщност е много объркан човек. Този път той е взел друго решение.

Той ще увеличи заплатите само на онези служители, които понастоящем получават заплата, по-малка от $20000 и започна работа преди 01 януари 2017 г. .

Как може да намери тези служители?

⊕ Изход от ситуацията:

  • Да, прав сте. Просто използвайте формулата на раздел 1.2 с И вместо функция ИЛИ функция.
=IF(AND($D5<25000,$C5

  • Виждате ли, имаме служители, които отговарят и на двете условия.

За да научите подробности за формулата, преминете към раздел ii на Пример 1 .

Прочетете още: Excel VBA: Комбиниране на If с And за множество условия

Подобни четива

  • Как да използваме PERCENTILE с множество условия IF в Excel (3 примера)
  • Excel IF между няколко диапазона (4 подхода)
  • Как да използвате множество условия IF в Excel (3 примера)

3. Използване на вложени изявления IF за съпоставяне на няколко условия в Excel

В предишния раздел определихме дали двете условия - средна заплата, по-малка от $25000 , а най-ниската заплата е по-малка от $20000 са удовлетворени или не.

Но замисляли ли сте се, че можем да определим това по друг начин - като използваме IF в рамките на друг IF функция?

⊕ Заобикаляне на проблема:

  • Първо ще проверим дали най-ниската заплата е по-малка от $20000 или не.
  • В противен случай се връща "Не увеличавайте" .
  • Но ако е така, тогава отново ще проверим дали средната заплата е по-малка от $25000 или не.
  • Ако не, ще се върне "Не увеличавайте" .
  • Но ако е така, този път ще се върне "увеличаване"
  • Така че пълната формула ще бъде:
=IF(MIN(D5:D20)<20000,(IF(AVERAGE(D5:D20)<25000, "Увеличаване", "Не се увеличава")), "Не се увеличава")

  • Вижте, Excel предложи да не увеличаваме заплатата, тъй като и двете условия не са изпълнени.

Обяснение на формулата:

Нека да разбием формулата, за да я разберем по-добре.

  • MIN(D5:D20)<20000

Той връща TRUE ако най-ниската заплата е по-малка от $20000. В противен случай връща FALSE . Тук тя връща TRUE .

Резултат: ИСТИНА.

  • Така формулата става: =IF(TRUE,(IF(AVERAGE(D5:D20)<25000, "Увеличаване", "Не увеличавай")), "Не увеличавай")

Като IF вижда TRUE Това означава, че тя влиза в първия изход. Това означава, че тя влиза в (IF(AVERAGE(D5:D20)<25000, "Увеличаване", "Не увеличавай"))

  • AVERAGE(D5:D20)<25000

Той връща TRUE ако средната заплата е по-малка от $25000 , в противен случай връща FALSE . Този път се връща FALSE .

Резултат: ЛЪЖА.

  • Така формулата става: =IF(TRUE,(IF(FALSE, "Увеличаване", "Не увеличавай")), "Не увеличавай")

Така той връща втория изход на втория IF , "Не увеличавайте" .

Резултат: "Не увеличавайте".

  • Ако разбирате това, нека се опитаме да отговорим на един стар въпрос по различен начин.

Можете ли да ми кажете каква ще бъде формулата за получаване на " Да ", ако най-високата заплата е по-голяма от $40000 или най-ниската заплата е по-малка от $20000 , в противен случай " Не "?

  • Да, прави сте. Формулата ще бъде:
=IF(MAX(D5:D20)>40000,"Yes",(IF(MIN(D5:D20)<20000,"Yes","No")))

Прочетете още: Изявление VBA IF с множество условия в Excel (8 метода)

4. Използвайте изявлението IF на Excel с 3 условия, включващи текстов критерий

Нека помислим отново. Началникът на Mars Group Иска да добави още едно условие въз основа на текста. За тази цел той добавя пола на служителите към набора от данни. Сега той иска да знае името на служителя, чиято заплата е под $25000 , който се присъединява след 01/01/2017 , и мъж.

⊕ Изход от ситуацията:

  • Този път трябва да използваме следната формула, базирана на И с функцията IF изявление.
=IF(AND($E5<25000,$C5

  • Excel връща имената на служителите.

Обяснение на формулата:

Нека да разбием формулата, за да я разберем по-добре.

  • E5<25000

Той проверява дали E5 е по-ниска от 25000 или не.

Резултат: FALSE

  • C5

Той проверява дали C5 е по-ранна от дадената дата с ДАТА функция.

Резултат: TRUE

  • D5="Мъжки"

Той проверява дали D5 съвпада или не със зададения текст.

Резултат: TRUE

  • AND($E5<25000,$C5

Това се отнася за И операция при дадените три условия.

Резултат: FALSE

  • =IF(AND($E5<25000,$C5

Това се връща въз основа на резултата от И функция.

Резултат: (празно)

Прочетете още: Функция IF на Excel с 3 условия (5 логически теста)

5. Комбиниране на функциите IF и VLOOKUP за съчетаване на няколко условия в диапазон

В този раздел ще извършим същата операция от последния метод с помощта на Функция VLOOKUP .

⊕ Изход от ситуацията:

  • Просто ще променим началната дата на 01/01/2015 .
  • Вижте следната формула, използвана за Клетка H7 .
=VLOOKUP(H4,IF((D5:D20<=H6)*(E5:E20<=H5),B5:E20,""),2,FALSE)

  • Получаваме името на служителя, който е започнал работа на или преди 01/01/2015 , чиято заплата е равна или по-ниска от $25000 , и мъж.

Обяснение на формулата:

  • D5:D20<=H6

Проверява се дали зададеният диапазон е равен или по-малък от H6.

Резултат: {ИСТИНА, ЛЪЖА, ВЯРНО, ВЯРНО, ВЯРНО, ВЯРНО, ВЯРНО, ВЯРНО, ВЯРНО, ВЯРНО, ВЯРНО, ВЯРНО, ВЯРНО, ВЯРНО, ВЯРНО, ВЯРНО, ВЯРНО, ВЯРНО, ВЯРНО, ВЯРНО, ВЯРНО, ВЯРНО}

  • E5:E20<=H5

Проверява се дали зададеният диапазон е равен или по-малък от H5 .

Резултат: {ФАЛШИВО, ВЯРНО, НЕВЯРНО, НЕВЯРНО, НЕВЯРНО, НЕВЯРНО, ВЯРНО, ВЯРНО, НЕВЯРНО, ВЯРНО, ВЯРНО, НЕВЯРНО, НЕВЯРНО, НЕВЯРНО, НЕВЯРНО, НЕВЯРНО, НЕВЯРНО}

  • (D5:D20<=H6)*(E5:E20<=H5)

Това умножава резултатите, получени от предишните две операции.

Резултат: {0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0}

  • IF((D5:D20<=H6)*(E5:E20<=H5),B5:E20,””)

Изпълнявайки резултатите от дадените две условия, прилагаме Функция IF .

Резултат: [Мъж, Kane Austin, 03/06/2014, 25000]

  • VLOOKUP(H4,IF((D5:D20<=H6)*(E5:E20<=H5),B5:E20,""),2,FALSE)

Тук VLOOKUP връща 2. компонент на тази новообразувана таблица.

Резултат: Кейн Остин

Прочетете още: Пример за VLOOKUP с множество условия IF в Excel (9 критерия)

Заключение

Чрез тези методи можете да използвате всяка IF изявление с множество условия в диапазона както И видове и ИЛИ Знаете ли друг метод? Или имате въпроси? Не се колебайте да ни информирате. ExcelWIKI за повече подобни статии.

Хю Уест е опитен обучител и анализатор на Excel с над 10 години опит в индустрията. Има бакалавърска степен по счетоводство и финанси и магистърска степен по бизнес администрация. Хю има страст към преподаването и е разработил уникален подход на преподаване, който е лесен за следване и разбиране. Неговите експертни познания по Excel са помогнали на хиляди студенти и професионалисти по целия свят да подобрят уменията си и да постигнат отлични резултати в кариерата си. Чрез своя блог Хю споделя знанията си със света, като предлага безплатни уроци за Excel и онлайн обучение, за да помогне на хората и фирмите да достигнат пълния си потенциал.