Excel IF funkcija s više uvjeta

  • Podijeli Ovo
Michael Brown

Udžbenik pokazuje kako stvoriti višestruke naredbe IF u Excelu s logikom I i ILI. Također ćete naučiti kako koristiti IF zajedno s drugim Excel funkcijama.

U prvom dijelu našeg vodiča za Excel IF, pogledali smo kako konstruirati jednostavnu IF naredbu s jednim uvjetom za tekst, brojevi, datumi, praznine i nepraznine. Za moćnu analizu podataka, međutim, često ćete morati procijeniti više uvjeta odjednom. Primjeri formula u nastavku pokazat će vam najučinkovitije načine za to.

    Kako koristiti funkciju IF s više uvjeta

    U biti, postoje dvije vrste FORMULA AKO s višestrukim kriterijima na temelju I/ILI logike . Posljedično, u logičkom testu vaše IF formule, trebali biste koristiti jednu od ovih funkcija:

    • AND funkcija - vraća TRUE ako su svi uvjeti zadovoljeni; FALSE inače.
    • OR funkcija - vraća TRUE ako je bilo koji pojedinačni uvjet zadovoljen; FALSE inače.

    Kako bismo bolje ilustrirali poantu, istražimo neke primjere formula iz stvarnog života.

    Excel IF izjava s višestrukim uvjetima (AND logikom)

    The generička formula programa Excel IF s dva ili više uvjeta je sljedeća:

    IF(AND( uvjet1, uvjet2, …), value_if_true, value_if_false)

    Prevedeno na ljudski jeziku, formula kaže: Ako je uvjet 1 istinit I uvjet 2 je istinit, vrati vrijednost_ako_točno ; else return value_if_false .

    Pretpostavimo da imate tablicu s rezultatima dva testa u stupcima B i C. Da bi položio završni ispit, student mora imati oba rezultata veća od 50.

    Za logički test koristite sljedeću AND izjavu: AND(B2>50, C2>50)

    Ako su oba uvjeta istinita, formula će vratiti "Prošlo"; ako je bilo koji uvjet lažan - "Pad".

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

    Lako, zar ne? Snimka zaslona u nastavku dokazuje da naša formula Excel IF /AND radi ispravno:

    Na sličan način možete koristiti funkciju Excel IF s više tekstualnih uvjeta .

    Za na primjer, za izlaz "Dobro" ako su i B2 i C2 veći od 50, "Loše" inače, formula je:

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

    Važna napomena! Funkcija AND provjerava sve uvjete , čak i ako su već ispitani procijenjeni na FALSE. Takvo ponašanje pomalo je neobično budući da se u većini programskih jezika sljedeći uvjeti ne testiraju ako je bilo koji od prethodnih testova vratio FALSE.

    U praksi, naizgled točna IF izjava može rezultirati pogreškom zbog ovoga specifičnost. Na primjer, formula u nastavku vratila bi #DIV/0! (pogreška "dijeli s nulom") ako je ćelija A2 jednaka 0:

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

    Da biste to izbjegli, trebali biste koristiti ugniježđenu IF funkciju:

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

    Za više informacija pogledajte IF I formulu u Excelu.

    Excel IF funkcija s višeuvjeti (logika ILI)

    Da biste učinili jednu stvar ako je ispunjen bilo koji uvjet , inače učinite nešto drugo, koristite ovu kombinaciju funkcija IF i OR:

    IF(OR( uvjet1 , uvjet2 , …), vrijednost_ako_istina, vrijednost_ako_netočno)

    Razlika od gore navedene formule IF / AND je da Excel vraća TRUE ako je bilo koji od navedenih uvjeta istinit.

    Dakle, ako u prethodnoj formuli koristimo ILI umjesto I:

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

    Tada će svatko tko ima više od 50 bodova na bilo kojem ispitu dobiti "Prošao" na stupac D. Uz takve uvjete naši učenici imaju veće šanse položiti završni ispit (Yvette je posebno nesretna jer je pala za samo 1 bod :)

    Savjet. U slučaju da stvarate višestruku IF naredbu s tekstom i testirate vrijednost u jednoj ćeliji s logikom OR (tj. ćelija može biti "ovo" ili "ono"), tada možete izgraditi kompaktniji formula koja koristi konstantu polja.

    Na primjer, za označavanje prodaje kao "zatvoreno" ako je ćelija B2 "isporučeno" ili "plaćeno", formula je:

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

    Više primjera formula može se pronaći u Excel IF OR funkciji.

    IF s više AND & OR izjave

    Ako vaš zadatak zahtijeva procjenu nekoliko skupova višestrukih uvjeta, morat ćete koristiti oba AND & OR funkcionira istovremeno.

    U našoj oglednoj tablici, pretpostavimo da imate sljedeće kriterije za provjeru rezultata ispita:

    • Uvjet 1:ispit1>50 i ispit2>50
    • Uvjet 2: ispit1>40 i ispit2>60

    Ako je ispunjen bilo koji od uvjeta, završni ispit se smatra položenim.

    Na prvi pogled formula se čini malo zeznutom, ali zapravo nije! Samo izrazite svaki od gornjih uvjeta kao AND naredbu i ugniježdite ih u OR funkciju (budući da nije potrebno ispuniti oba uvjeta, oba će biti dovoljna):

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

    Zatim upotrijebite funkciju OR za logički test IF i unos željenih vrijednosti value_if_true i value_if_false . Kao rezultat, dobivate sljedeću IF formulu s više I/ILI uvjeta:

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

    Snimak zaslona u nastavku pokazuje da smo formulu napravili ispravno:

    Naravno , niste ograničeni na korištenje samo dvije funkcije I/ILI u svojim IF formulama. Možete ih koristiti onoliko koliko vaša poslovna logika zahtijeva, pod uvjetom da:

    • U programu Excel 2007 i novijim verzijama nemate više od 255 argumenata, a ukupna duljina IF formule ne prelazi 8192 znaka.
    • U programu Excel 2003 i starijim verzijama nema više od 30 argumenata, a ukupna duljina vaše IF formule ne prelazi 1024 znaka.

    Ugniježđena IF izjava za provjeri više logičkih testova

    Ako želite procijeniti više logičkih testova unutar jedne formule, možete ugnijezditi nekoliko funkcija jednu u drugu. Takve funkcije se nazivaju ugniježđeneIF funkcije . Pokazali su se posebno korisnima kada želite vratiti različite vrijednosti ovisno o rezultatima logičkih testova.

    Evo tipičnog primjera: pretpostavimo da želite kvalificirati postignuća učenika kao " Dobro ", " Zadovoljavajuće " i " Loše " na temelju sljedećih rezultata:

    • Dobro: 60 ili više (>=60)
    • Zadovoljavajuće: između 40 i 60 (>40 i <60)
    • Loše: 40 ili manje (<=40)

    Prije nego što napišete formulu, razmislite o redoslijedu funkcija koje ćete ugnijezditi. Excel će procijeniti logičke testove redoslijedom kojim se pojavljuju u formuli. Nakon što se uvjet procijeni kao TRUE, naredni uvjeti se ne testiraju, što znači da se formula zaustavlja nakon prvog TRUE rezultata.

    U našem slučaju, funkcije su raspoređene od najveće prema najmanjoj:

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

    Naravno, možete ugnijezditi više funkcija ako je potrebno (do 64 u modernim verzijama).

    Za više informacija pogledajte Kako koristiti više ugniježđenih IF naredbi u Excelu.

    Excel IF formula polja s višestrukim uvjetima

    Još jedan način da dobijete Excel IF za testiranje više uvjeta je upotrebom formule niza.

    Za procjenu uvjeta s logikom I, koristite zvjezdicu:

    IF( uvjet1 ) * ( uvjet2 ) * …, value_if_true, value_if_false)

    Za testiranje uvjeta s logikom OR, koristite znak plus:

    IF( uvjet1 ) + ( uvjet2 ) + …,value_if_true, value_if_false)

    Da biste ispravno dovršili formulu niza, istovremeno pritisnite tipke Ctrl + Shift + Enter. U Excelu 365 i Excelu 2021 ovo također funkcionira kao redovita formula zbog podrške za dinamičke nizove.

    Na primjer, da biste dobili "Prolaz" ako su i B2 i C2 veći od 50, formula je:

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

    U mom programu Excel 365 normalna formula radi sasvim dobro (kao što možete vidjeti na gornjim snimkama zaslona). U programu Excel 2019 i starijim verzijama, ne zaboravite to učiniti formulom polja pomoću prečaca Ctrl + Shift + Enter.

    Za procjenu više uvjeta logikom ILI, formula je:

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

    Korištenje IF-a zajedno s drugim funkcijama

    Ovaj odjeljak objašnjava kako koristiti IF u kombinaciji s drugim Excel funkcijama i koje vam prednosti to daje.

    Primjer 1. Ako #N /Pogreška u VLOOKUP-u

    Kada VLOOKUP ili druga funkcija traženja ne može pronaći nešto, vraća pogrešku #N/A. Kako bi vaše tablice izgledale ljepše, možete vratiti nulu, prazno ili određeni tekst ako #N/A. Za to koristite ovu generičku formulu:

    IF(ISNA(VLOOKUP(…)), vrijednost_ako_na , VLOOKUP(…))

    Na primjer:

    Ako #N/ Povrat 0:

    Ako vrijednost traženja u E1 nije pronađena, formula vraća nulu.

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

    Ako #N/A vrati prazno:

    Ako vrijednost pretraživanja nije pronađena, formula ne vraća ništa (prazan niz).

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

    Ako #N/A vraća određeni tekst:

    Ako tražena vrijednost nije pronađena, theformula vraća određeni tekst.

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

    Za više primjera formula pogledajte VLOOKUP s naredbom IF u Excelu.

    Primjer 2. IF sa SUM, AVERAGE, MIN i MAX funkcije

    Za zbrajanje vrijednosti ćelija na temelju određenih kriterija, Excel nudi funkcije SUMIF i SUMIFS.

    U nekim situacijama vaša poslovna logika može zahtijevati uključivanje funkcije SUM u logički test IF. Na primjer, za vraćanje različitih tekstualnih oznaka ovisno o zbroju vrijednosti u B2 i C2, formula je:

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

    Ako je zbroj veći od 130, rezultat je "dobar "; ako je veći od 110 – "zadovoljava", ako je 110 ili niže – "loš".

    Na sličan način, možete ugraditi funkciju AVERAGE u logički test IF i vratiti različite oznake na temelju prosječnog rezultata :

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

    Pod pretpostavkom da je ukupni rezultat u stupcu D, možete identificirati najviše i najniže vrijednosti uz pomoć funkcija MAX i MIN:

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

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

    Da biste obje oznake imali u jednom stupcu, ugniježdite gornje funkcije jednu u drugu:

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

    Isto tako, možete koristiti IF zajedno sa svojim prilagođenim Na primjer, možete ga kombinirati s GetCellColor ili GetCellFontColor da biste vratili različite rezultate na temelju boje ćelije.

    Osim toga, Excel nudi niz funkcija za izračunavanje podataka na temelju uvjeta. Za detaljne primjere formula, provjerite sljedećevodiči:

    • COUNTIF - broji ćelije koje ispunjavaju uvjet
    • COUNTIFS - broji ćelije s više kriterija
    • SUMIF - uvjetno zbraja ćelije
    • SUMIFS - zbroj ćelija s više kriterija

    Primjer 3. IF s ISNUMBER, ISTEXT i ISBLANK

    Za prepoznavanje teksta, brojeva i praznih ćelija, Microsoft Excel nudi posebne funkcije kao što su ISTEXT, ISNUMBER i ISBLANK. Stavljajući ih u logičke testove tri ugniježđene IF naredbe, možete identificirati sve različite vrste podataka u jednom potezu:

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

    Primjer 4. IF i CONCATENATE

    To ispišite rezultat IF i nešto teksta u jednu ćeliju, koristite funkcije CONCATENATE ili CONCAT (u Excelu 2016 - 365) i IF zajedno. Na primjer:

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

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

    Gledajući snimak zaslona u nastavku, teško da će vam trebati bilo kakvo objašnjenje o tome što formula radi:

    IF ISERROR / ISNA formula u Excelu

    Moderne verzije Excela imaju posebne funkcije za hvatanje pogrešaka i njihovu zamjenu drugim izračunom ili unaprijed definiranom vrijednošću - IFERROR (u Excelu 2007 i novijim) i IFNA (u Excelu 2013 i novijim). U ranijim verzijama Excela umjesto toga možete koristiti kombinacije IF ISERROR i IF ISNA.

    Razlika je u tome što IFERROR i ISERROR obrađuju sve moguće Excel pogreške, uključujući #VALUE!, #N/A, #NAME?, #REF!, #NUM!, #DIV/0! i #NULL!. Dok su IFNA i ISNA specijalizirani isključivo za #N/A pogreške.

    Na primjer, zazamijenite pogrešku "dijeli s nulom" (#DIV/0!) svojim prilagođenim tekstom, možete upotrijebiti sljedeću formulu:

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

    I to je sve što imam reći o korištenju IF funkcija u Excelu. Zahvaljujem vam na čitanju i nadam se da se vidimo na našem blogu sljedeći tjedan!

    Radna knjiga za vježbe za preuzimanje

    Excel IF više kriterija - primjeri (.xlsx datoteka)

    Michael Brown predani je tehnološki entuzijast sa strašću za pojednostavljivanjem složenih procesa pomoću softverskih alata. S više od desetljeća iskustva u tehnološkoj industriji, usavršio je svoje vještine u Microsoft Excelu i Outlooku, kao i Google tablicama i dokumentima. Michaelov blog posvećen je dijeljenju znanja i stručnosti s drugima, pružajući savjete i upute koje je lako slijediti za poboljšanje produktivnosti i učinkovitosti. Bez obzira jeste li iskusni profesionalac ili početnik, Michaelov blog nudi vrijedne uvide i praktične savjete za izvlačenje maksimuma iz ovih osnovnih softverskih alata.