Функцыя Excel IF з некалькімі ўмовамі

  • Падзяліцца Гэтым
Michael Brown

Падручнік паказвае, як стварыць некалькі аператараў IF у Excel з дапамогай логікі І і АБО. Акрамя таго, вы даведаецеся, як выкарыстоўваць IF разам з іншымі функцыямі Excel.

У першай частцы нашага падручніка па Excel IF мы разгледзелі, як стварыць просты аператар IF з адной умовай для тэксту, лічбы, даты, прабелы і непрабелы. Аднак для магутнага аналізу даных часта можа спатрэбіцца ацаніць некалькі ўмоў адначасова. Прыведзеныя ніжэй прыклады формул пакажуць вам найбольш эфектыўныя спосабы зрабіць гэта.

    Як выкарыстоўваць функцыю IF з некалькімі ўмовамі

    Па сутнасці, існуе два тыпы Формула КАЛІ з некалькімі крытэрамі на аснове логікі І/АБО . Такім чынам, у лагічнай праверцы вашай формулы КАЛІ вы павінны выкарыстоўваць адну з гэтых функцый:

    • функцыя І - вяртае TRUE, калі ўсе ўмовы выкананы; У адваротным выпадку FALSE.
    • Функцыя OR - вяртае TRUE, калі выконваецца любая ўмова ; ХЛУСНЯ ў адваротным выпадку.

    Каб лепш праілюстраваць гэты момант, давайце даследуем некалькі прыкладаў формул з рэальнага жыцця.

    Аператар Excel IF з некалькімі ўмовамі (І логікай)

    агульная формула Excel IF з двума або больш умовамі:

    IF(AND( умова1, умова2, …), значэнне_калі_праўда, значэнне_калі_хлусня)

    Перакладзена на чалавечы мове, формула кажа: Калі ўмова 1 праўдзівая І ўмова 2 праўдзівая, вярнуць значэнне_калі_праўда ; else return value_if_false .

    Выкажам здагадку, у вас ёсць табліца з пералікам балаў за два тэсты ў слупках B і C. Каб здаць выніковы экзамен, студэнт павінен мець абодва балы больш за 50.

    Для лагічнай праверкі вы выкарыстоўваеце наступны оператор AND: AND(B2>50, C2>50)

    Калі абедзве ўмовы спраўджваюцца, формула верне "Pass"; калі якая-небудзь умова няслушная - "Не выконваецца".

    =IF(AND(B2>50, B2>50), "Pass", "Fail")

    Лёгка, ці не так? Здымак экрана ніжэй даказвае, што наша формула Excel IF /AND працуе правільна:

    Аналагічным чынам вы можаце выкарыстоўваць функцыю Excel IF з некалькімі тэкставымі ўмовамі .

    Для напрыклад, каб вывесці «Добра», калі і B2, і C2 большыя за 50, «Дрэнна», інакш, формула:

    =IF(AND(B2="pass", C2="pass"), "Good!", "Bad")

    Важная заўвага! Функцыя І правярае ўсе ўмовы , нават калі ўжо праверанае(-я) ацанілі як ХЛУСНЯ. Такія паводзіны трохі незвычайныя, бо ў большасці моў праграмавання наступныя ўмовы не правяраюцца, калі любы з папярэдніх тэстаў вярнуў ХЛУСНЯ.

    На практыцы, здавалася б, правільны аператар IF можа прывесці да памылкі з-за гэтага спецыфіка. Напрыклад, прыведзеная ніжэй формула верне #DIV/0! (памылка "дзяліць на нуль"), калі ячэйка A2 роўная 0:

    =IF(AND(A20, (1/A2)>0.5),"Good", "Bad")

    Каб пазбегнуць гэтага, вы павінны выкарыстоўваць укладзеную функцыю IF:

    =IF(A20, IF((1/A2)>0.5, "Good", "Bad"), "Bad")

    Для атрымання дадатковай інфармацыі, калі ласка, глядзіце формулу КАЛІ І ў Excel.

    Функцыя Excel IF з некалькіміумовы (логіка АБО)

    Каб выканаць адну рэч, калі выканана любая ўмова , у адваротным выпадку зрабіць што-небудзь яшчэ, выкарыстоўвайце гэтую камбінацыю функцый КАЛІ і АБО:

    КАЛІ(АБО( умова1 , умова2 , …), значэнне_калі_ісціна, значэнне_калі_хлусня)

    Адрозненне ад разгледжанай вышэй формулы КАЛІ / І заключаецца ў тым, што Excel вяртае TRUE, калі любая з указаных умоў праўдзівая.

    Такім чынам, калі ў папярэдняй формуле мы выкарыстоўваем АБО замест І:

    =IF(OR(B2>50, B2>50), "Pass", "Fail")

    Тады кожны, хто мае больш за 50 балаў у любым іспыце, атрымае "Здана" ў слупок D. Пры такіх умовах нашы студэнты маюць больш шанцаў здаць выпускны экзамен (асабліва не пашанцавала Івет з правалам усяго на 1 бал :)

    Савет. У выпадку, калі вы ствараеце некалькі аператараў IF з тэкстам і правяраеце значэнне ў адной ячэйцы з дапамогай логікі АБО (г.зн. ячэйка можа быць "гэтым" ці "гэтым"), вы можаце стварыць больш кампактны формула з выкарыстаннем канстанты масіва.

    Напрыклад, каб пазначыць продаж як "закрыты", калі ячэйка B2 альбо "дастаўлена", альбо "аплачана", формула:

    =IF(OR(B2={"delivered", "paid"}), "Closed", "")

    Больш прыкладаў формул можна знайсці ў функцыі Excel IF OR.

    КАЛІ з некалькімі І & АБО аператары

    Калі ваша задача патрабуе ацэнкі некалькіх набораў некалькіх умоў, вы павінны будзеце выкарыстоўваць абодва AND & АБО функцыянуе адначасова.

    У нашым прыкладзе табліцы выкажам здагадку, што ў вас ёсць наступныя крытэрыі для праверкі вынікаў экзамену:

    • Умова 1:экзамен1>50 і экзамен2>50
    • Умова 2: экзамен1>40 і экзамен2>60

    Калі любая з умоў выканана, выпускны экзамен лічыцца здадзеным.

    На першы погляд, формула здаецца трохі складанай, але на самой справе гэта не так! Вы проста выражаеце кожнае з вышэйпералічаных умоў як аператар І і ўкладваеце іх у функцыю АБО (паколькі неабавязкова выконваць абедзве ўмовы, дастаткова любога з іх):

    OR(AND(B2>50, C2>50), AND(B2>40, C2>60)

    Затым выкарыстоўвайце функцыю АБО для лагічнай праверкі КАЛІ і пастаўце патрэбныя значэнні value_if_true і value_if_false . У выніку вы атрымаеце наступную формулу КАЛІ з некалькімі ўмовамі І/АБО:

    =IF(OR(AND(B2>50, C2>50), AND(B2>40, C2>60), "Pass", "Fail")

    Здымак экрана ніжэй паказвае, што мы зрабілі формулу правільна:

    Натуральна , вы не абмежаваныя выкарыстаннем толькі дзвюх функцый І/АБО ў вашых формулах КАЛІ. Вы можаце выкарыстоўваць столькі з іх, колькі патрабуе ваша бізнес-логіка, пры ўмове, што:

    • У Excel 2007 і вышэй у вас не больш за 255 аргументаў, а агульная даўжыня формулы КАЛІ не перавышае 8192 сімвала.
    • У Excel 2003 і ніжэйшых версій не больш за 30 аргументаў, а агульная даўжыня вашай формулы КАЛІ не перавышае 1024 сімвала.

    Укладзены аператар КАЛІ для праверыць некалькі лагічных тэстаў

    Калі вы хочаце ацаніць некалькі лагічных тэстаў у рамках адной формулы, вы можаце ўкласці некалькі функцый адна ў адну. Такія функцыі называюцца ўкладзеныміIF функцыі . Яны аказваюцца асабліва карыснымі, калі вы жадаеце вярнуць розныя значэнні ў залежнасці ад вынікаў лагічных тэстаў.

    Вось тыповы прыклад: выкажам здагадку, што вы хочаце кваліфікаваць дасягненні студэнтаў як " Добра ", " Здавальняюча " і " Дрэнна " на аснове наступных балаў:

    • Добра: 60 ​​або больш (>=60)
    • Здавальняюча: ад 40 да 60 (>40 і <60)
    • Дрэнна: 40 або менш (<=40)

    Перш чым пісаць формулу, разгледзьце парадак функцый, якія вы збіраецеся ўкласці. Excel ацэніць лагічныя тэсты ў парадку іх з'яўлення ў формуле. Калі ўмова атрымае значэнне TRUE, наступныя ўмовы не правяраюцца, гэта значыць, што формула спыняецца пасля першага TRUE выніку.

    У нашым выпадку функцыі размешчаны ад большага да найменшага:

    =IF(B2>=60, "Good", IF(B2>40, "Satisfactory", "Poor"))

    Натуральна, пры неабходнасці вы можаце ўкласці больш функцый (да 64 у сучасных версіях).

    Для атрымання дадатковай інфармацыі глядзіце, як выкарыстоўваць некалькі ўкладзеных аператараў IF у Excel.

    Формула масіва Excel IF з некалькімі ўмовамі

    Іншы спосаб атрымаць Excel IF для тэставання некалькі ўмоў з дапамогай формулы масіву.

    Каб ацаніць умовы з дапамогай логікі І, выкарыстоўвайце зорачку:

    КАЛІ( умова1 ) * ( умова2 ) * …, value_if_true, value_if_false)

    Каб праверыць умовы з логікай АБО, выкарыстоўвайце знак плюс:

    КАЛІ( умова1 ) + ( умова2 ) + …,value_if_true, value_if_false)

    Каб правільна завяршыць формулу масіву, адначасова націсніце клавішы Ctrl + Shift + Enter. У Excel 365 і Excel 2021 гэта таксама працуе як звычайная формула дзякуючы падтрымцы дынамічных масіваў.

    Напрыклад, каб атрымаць «Прайшло», калі і B2, і C2 большыя за 50, формула:

    =IF((B2>50) * (C2>50), "Pass", "Fail")

    У маім Excel 365 звычайная формула працуе нармальна (як вы бачыце на скрыншотах вышэй). У Excel 2019 і больш ранніх версіях не забудзьцеся зрабіць гэта формулай масіва, выкарыстоўваючы спалучэнне клавіш Ctrl + Shift + Enter.

    Для ацэнкі некалькіх умоў з дапамогай логікі АБО формула:

    =IF((B2>50) + (C2>50), "Pass", "Fail")

    Выкарыстанне IF разам з іншымі функцыямі

    У гэтым раздзеле тлумачыцца, як выкарыстоўваць IF у спалучэнні з іншымі функцыямі Excel і якія перавагі гэта дае вам.

    Прыклад 1. Калі #N /Памылка ў VLOOKUP

    Калі VLOOKUP або іншая функцыя пошуку не можа нешта знайсці, яна вяртае памылку #N/A. Каб вашы табліцы выглядалі прыгажэй, вы можаце вярнуць нуль, пусты або пэўны тэкст, калі #N/A. Для гэтага выкарыстоўвайце наступную агульную формулу:

    IF(ISNA(VLOOKUP(…)), value_if_na , VLOOKUP(…))

    Напрыклад:

    Калі #N/ Вяртае 0:

    Калі пошукавае значэнне ў E1 не знойдзена, формула вяртае нуль.

    =IF(ISNA(VLOOKUP(E1, A2:B10, 2,FALSE )), 0, VLOOKUP(E1, A2:B10, 2, FALSE))

    Калі #N/A вяртае пустое:

    Калі пошукавае значэнне не знойдзена, формула нічога не вяртае (пусты радок).

    =IF(ISNA(VLOOKUP(E1, A2:B10, 2,FALSE )), "", VLOOKUP(E1, A2:B10, 2, FALSE))

    Калі #N/A вяртае пэўны тэкст:

    Калі шуканае значэнне не знойдзена, theформула вяртае пэўны тэкст.

    =IF(ISNA(VLOOKUP(E1, A2:B10, 2,FALSE )), "Not found", VLOOKUP(E1, A2:B10, 2, FALSE))

    Для атрымання дадатковых прыкладаў формул, калі ласка, глядзіце VLOOKUP з аператарам IF у Excel.

    Прыклад 2. IF з СУМА, СЯРЭДНЯЕ, МІН. і МАКС. функцыі

    Для сумавання значэнняў ячэек на аснове пэўных крытэрыяў Excel забяспечвае функцыі SUMIF і SUMIFS.

    У некаторых сітуацыях ваша бізнес-логіка можа запатрабаваць уключыць функцыю SUM у лагічны тэст КАЛІ. Напрыклад, каб вярнуць розныя тэкставыя цэтлікі ў залежнасці ад сумы значэнняў у B2 і C2, прывядзіце наступную формулу:

    =IF(SUM(B2:C2)>130, "Good", IF(SUM(B2:C2)>110, "Satisfactory", "Poor"))

    Калі сума большая за 130, вынік будзе "добра "; калі больш за 110 – «здавальняюча», калі 110 або ніжэй – «дрэнна».

    Аналагічным чынам вы можаце ўбудаваць функцыю AVERAGE у лагічны тэст КАЛІ і вяртаць розныя меткі на аснове сярэдняга бала :

    =IF(AVERAGE(B2:C2)>65, "Good", IF(AVERAGE(B2:C2)>55, "Satisfactory", "Poor"))

    Мяркуючы, што агульны бал знаходзіцца ў слупку D, вы можаце вызначыць найбольшае і самае нізкае значэнні з дапамогай функцый MAX і MIN:

    =IF(D2=MAX($D$2:$D$10), "Best result", "")

    =IF(D2=MAX($D$2:$D$10), "Best result", "")

    Каб мець абедзве цэтлікі ў адным слупку, укладзіце вышэйпаказаныя функцыі адна ў іншую:

    =IF(D2=MAX($D$2:$D$10), "Best result", IF(D2=MIN($D$2:$D$10), "Worst result", ""))

    Аналагічным чынам вы можаце выкарыстоўваць IF разам са сваім карыстальніцкім Функцыі. Напрыклад, вы можаце аб'яднаць яго з GetCellColor або GetCellFontColor, каб вярнуць розныя вынікі на аснове колеру ячэйкі.

    Акрамя таго, Excel забяспечвае шэраг функцый для разліку даных на аснове ўмоў. Для падрабязных прыкладаў формул, калі ласка, праверце наступнаепадручнікі:

    • COUNTIF - падлік вочак, якія адпавядаюць умове
    • COUNTIFS - падлік вочак па некалькіх крытэрыях
    • SUMIF - умоўная сума ячэек
    • SUMIFS - сума ячэек з некалькімі крытэрамі

    Прыклад 3. IF з ISNUMBER, ISTEXT і ISBLANK

    Для ідэнтыфікацыі тэксту, лічбаў і пустых вочак Microsoft Excel забяспечвае спецыяльныя функцыі, такія як ISTEXT, ISNUMBER і ІСБЛАНК. Размяшчаючы іх у лагічных тэстах трох укладзеных аператараў IF, вы можаце ідэнтыфікаваць усе розныя тыпы даных за адзін раз:

    =IF(ISTEXT(A2), "Text", IF(ISNUMBER(A2), "Number", IF(ISBLANK(A2), "Blank", "")))

    Прыклад 4. IF і CONCATENATE

    To вывесці вынік IF і некаторы тэкст у адну ячэйку, выкарыстоўвайце функцыі CONCATENATE або CONCAT (у Excel 2016 - 365) і IF разам. Напрыклад:

    =CONCATENATE("You performed ", IF(B1>100,"fantastic!", IF(B1>50, "well", "poor")))

    =CONCAT("You performed ", IF(B1>100,"fantastic!", IF(B1>50, "well", "poor")))

    Гледзячы на ​​скрыншот ніжэй, вам наўрад ці спатрэбіцца тлумачэнне таго, што робіць формула:

    КАЛІ ISERROR / Формула ISNA ў Excel

    Сучасныя версіі Excel маюць спецыяльныя функцыі для ўлоўлівання памылак і замены іх іншым разлікам або загадзя вызначаным значэннем - IFERROR (у Excel 2007 і пазнейшых версіях) і IFNA (у Excel 2013 і больш позніх версіях). У больш ранніх версіях Excel вы можаце выкарыстоўваць камбінацыі IF ISERROR і IF ISNA.

    Розніца ў тым, што IFERROR і ISERROR апрацоўваюць усе магчымыя памылкі Excel, у тым ліку #VALUE!, #N/A, #NAME?, #REF!, #NUM!, #DIV/0! і #NULL!. У той час як IFNA і ISNA спецыялізуюцца выключна на памылках #N/A.

    Напрыклад, кабзамяніце памылку "падзеліць на нуль" (#DIV/0!) сваім уласным тэкстам, вы можаце выкарыстаць наступную формулу:

    =IF(ISERROR(A2/B2), "N/A", A2/B2)

    І гэта ўсё, што я павінен сказаць пра выкарыстанне Функцыя IF у Excel. Я дзякую вам за чытанне і спадзяюся ўбачыць вас у нашым блогу на наступным тыдні!

    Практычны сшытак для спампоўкі

    Некалькі крытэрыяў Excel IF - прыклады (файл .xlsx)

    Майкл Браўн - адданы энтузіяст тэхналогій, які любіць спрашчэнне складаных працэсаў з дапамогай праграмных інструментаў. Маючы больш чым дзесяцігадовы досвед працы ў індустрыі тэхналогій, ён удасканальваў свае навыкі ў Microsoft Excel і Outlook, а таксама ў Google Sheets і Docs. Блог Майкла прысвечаны таму, каб падзяліцца сваімі ведамі і вопытам з іншымі, даючы простыя ў выкананні парады і падручнікі для павышэння прадукцыйнасці і эфектыўнасці. Незалежна ад таго, з'яўляецеся вы дасведчаным прафесіяналам або пачаткоўцам, блог Майкла прапануе каштоўную інфармацыю і практычныя парады, каб атрымаць максімальную аддачу ад гэтых неабходных праграмных інструментаў.