Kazalo
V učbeniku je razloženo, kako uporabiti Excelovi funkciji COUNTIF in COUNTIFS za štetje celic z več pogoji OR, npr. če celica vsebuje X, Y ali Z.
Kot vsi vemo, je funkcija COUNTIF v Excelu namenjena štetju celic na podlagi samo enega merila, medtem ko funkcija COUNTIFS oceni več meril z logiko AND. Kaj pa, če vaša naloga zahteva logiko OR - če je podanih več pogojev, se lahko kateri koli izmed njih ujema in je vključen v štetje?
Za to nalogo obstaja več možnih rešitev in v tem učbeniku bodo vse podrobno opisane. Primeri predvidevajo, da dobro poznate sintakso in splošno uporabo obeh funkcij. Če ne, boste morda želeli začeti s pregledom osnov:
Funkcija Excel COUNTIF - šteje celice z enim merilom.
Funkcija Excel COUNTIFS - šteje celice z več merili AND.
Zdaj, ko smo vsi na isti strani, se poglobimo v delo:
Števec celic s pogoji OR v Excelu
Ta razdelek zajema najpreprostejši scenarij - štetje celic, ki izpolnjujejo katerega koli (vsaj enega) od navedenih pogojev.
Formula 1. COUNTIF + COUNTIF
Najlažji način za štetje celic, ki imajo eno ali drugo vrednost (Countif a ali b ) je, da napišete običajno formulo COUNTIF, ki šteje vsak element posebej, in nato seštejete rezultate:
COUNTIF( obseg , merilo1 ) + COUNTIF( obseg , merilo2 )Na primer ugotovimo, koliko celic v stolpcu A vsebuje "jabolka" ali "banane":
=COUNTIF(A:A, "jabolka") + COUNTIF(A:A, "banane")
V resničnih delovnih listih je dobro, da za hitrejše delovanje formule uporabljate območja in ne celotne stolpce. Če se želite izogniti težavam s posodabljanjem formule ob vsaki spremembi pogojev, vnesite elemente, ki vas zanimajo, v vnaprej določene celice, na primer F1 in G1, in se sklicujte na te celice. Na primer: "Vnesite elemente, ki vas zanimajo, v vnaprej določene celice, na primer F1 in G1:
=COUNTIF(A2:A10, F1) + COUNTIF(A2:A10, G1)
Ta tehnika je primerna za nekaj meril, vendar bi z dodajanjem treh ali več funkcij COUNTIF formula postala preveč okorna. V tem primeru se raje odločite za eno od naslednjih možnosti.
Formula 2. COUNTIF s konstanto polja
Tukaj je bolj kompaktna različica formule SUMIF s pogoji OR v programu Excel:
SUM(COUNTIF( obseg , { merilo1 , merilo2 , merilo3 , ...}))Formula je sestavljena na naslednji način:
Najprej vse pogoje zapakirajte v konstanto polja - posamezne elemente ločite z vejicami, polje pa zapišite v oglate oklepaje, kot so {"jabolka", "banane", "limone"}.
Nato vključite konstanto polja v merila argument običajne formule COUNTIF: COUNTIF(A2:A10, {"jabolka", "banane", "limone"})
Na koncu v funkciji SUM izkrivite formulo COUNTIF. To je potrebno, ker bo COUNTIF vrnil 3 posamezna števila za "jabolka", "banane" in "limone", ta števila pa morate sešteti.
Naša celotna formula je naslednja:
=SUM(COUNTIF(A2:A10,{"jabolka", "banane", "limone"}))
Če želite svoja merila raje posredovati kot reference za območje , morate formulo vnesti s kombinacijo tipk Ctrl + Shift + Enter, da bo formula postala formula polja, na primer:
=SUM(COUNTIF(A2:A10,F1:H1))
Na spodnji sliki zaslona opazite oglate oklepaje - to je najočitnejši znak formule polja v Excelu:
Formula 3. SUMPRODUCT
Drug način štetja celic z logiko OR v Excelu je uporaba funkcije SUMPRODUCT na ta način:
SUMPRODUCT(1*( obseg ={ merilo1 , merilo2 , merilo3 , ...}))Za boljšo vizualizacijo logike bi lahko to zapisali tudi takole:
SUMPRODUKT((( obseg = merilo1 ) + ( obseg = merilo2 ) + ...)Formula preveri vsako celico v območju glede na vsako merilo in vrne TRUE, če je merilo izpolnjeno, in FALSE v nasprotnem primeru. Kot vmesni rezultat dobite nekaj polj vrednosti TRUE in FALSE (število polj je enako številu vaših meril). Nato se elementi polj na istem mestu seštejejo, tj. prvi elementi v vseh poljih, drugi elementi in tako naprej.operacija dodajanja pretvori logične vrednosti v številke, tako da na koncu dobimo eno polje 1 (eno od meril ustreza) in 0 (nobeno od meril ne ustreza). Ker se vsa merila preverjajo v istih celicah, se v dobljenem polju ne more pojaviti nobeno drugo število - samo eno začetno polje ima lahko na določenem mestu TRUE, v drugih bo FALSE. Nazadnje, SUMPRODUCTsešteje elemente dobljenega polja in dobite želeno število.
Prva formula deluje podobno, le da vrne eno dvodimenzionalno polje vrednosti TRUE in FALSE, ki ju pomnožite z 1, da pretvorite logični vrednosti v 1 oziroma 0.
Če formule uporabimo za naš vzorec podatkov, dobimo naslednjo obliko:
=SUMPRODUCT(1*(A2:A10={"jabolka", "banane", "limone"}))
Ali
=SUMPRODUCT((A2:A10="jabolka") + (A2:A10="banane") + (A2:A10="limone"))
Zamenjajte trdno zakodirano konstanto polja s sklicevanjem na območje in dobili boste še elegantnejšo rešitev:
=SUMPRODUKT(1*( A2:A10=F1:H1))
Opomba: Funkcija SUMPRODUCT je počasnejša od funkcije COUNTIF, zato je to formulo najbolje uporabljati za razmeroma majhne nize podatkov.
Štetje celic z logiko OR in AND
Pri delu z velikimi podatkovnimi nizi, ki imajo večnivojske in mednivojske odnose med elementi, je verjetno, da boste morali hkrati šteti celice s pogoji OR in AND.
Na primer, preštejmo "dostavljena" jabolka, "banane" in "limone". Kako to storimo? Za začetek prevedimo naše pogoje v jezik programa Excel:
- Stolpec A: "jabolka" ali "banane" ali "limone".
- Stolpec C: "dostavljeno"
Če pogledamo z drugega zornega kota, moramo prešteti vrstice z "jabolki in dostavljeno" ALI "bananami in dostavljeno" ALI "limonami in dostavljeno". Tako se naloga skrči na štetje celic s tremi pogoji OR - točno to, kar smo naredili v prejšnjem razdelku! Edina razlika je, da boste namesto COUNTIF uporabili COUNTIFS za vrednotenje merila AND v vsakem pogoju OR.
Formula 1. COUNTIFS + COUNTIFS
To je najdaljša formula, ki jo je najlažje napisati :)
=COUNTIFS(A2:A10, "jabolka", C2:C10, "dostavljeno") + COUNTIFS(A2:A10, "banane", C2:C10, "dostavljeno")) + COUNTIFS(A2:A10, "limone", C2:C10, "dostavljeno"))
Spodnja slika prikazuje isto formulo s sklici na celice:
=COUNTIFS(A2:A10, K1, C2:C10, K2) + COUNTIFS(A2:A10, L1, C2:C10, K2) + COUNTIFS(A2:A10, M1,C2:C10, K2)
Formula 2. COUNTIFS s konstanto polja
Kompaktnejšo formulo COUNTIFS z logiko AND/OR lahko ustvarite tako, da kriterije OR zapakirate v konstanto polja:
=SUM(COUNTIFS(A2:A10, {"jabolka", "banane", "limone"}, C2:C10, "dostavljeno"))
Če za merila uporabljate referenco na območje, potrebujete formulo polja, ki jo dokončate s pritiskom kombinacije tipk Ctrl + Shift + Enter :
=SUM(COUNTIFS(A2:A10,F1:H1,C2:C10,F2))
Nasvet. Po potrebi lahko uporabite nadomestni znaki v merilih katere koli od zgoraj obravnavanih formul. Če želite na primer prešteti vse vrste banan, kot so "zelene banane" ali "banane z zlatimi prsti", lahko uporabite to formulo:
=SUM(COUNTIFS(A2:A10, {"jabolka", "*banane*", "limone"}, C2:C10, "dostavljeno"))
Na podoben način lahko sestavite formulo za štetje celic na podlagi drugih vrst meril. Če želite na primer dobiti število "jabolk", "banan" ali "limon", ki so "dostavljena" in je znesek večji od 200, dodajte še en par območij meril/kriterijev v COUNTIFS:
=SUM(COUNTIFS(A2:A10, {"jabolka", "*banane*", "limone"}, C2:C10, "dostavljeno", B2:B10,">200"))
Lahko pa uporabite to formulo za polje (vnesete jo s kombinacijo tipk Ctrl + Shift + Enter):
=SUM(COUNTIFS(A2:A10,F1:H1,C2:C10,F2, B2:B10, ">"&F3))
Štetje celic z več pogoji OR
V prejšnjem primeru ste se naučili, kako preizkusiti en niz pogojev OR. Kaj pa, če imate dva ali več nizov in želite dobiti skupno število vseh možnih razmerij OR?
Glede na to, koliko pogojev morate obdelati, lahko uporabite COUNTIFS s konstanto polja ali SUMPRODUCT z ISNUMBER MATCH. Prvo je razmeroma enostavno sestaviti, vendar je omejena na samo 2 sklopa pogojev OR. Pri drugi lahko ovrednotimo poljubno število pogojev (seveda razumno število glede na Excelovo omejitev na 255 argumentov in 8192 znakov skupne dolžine formule),vendar bo morda potrebno nekaj truda, da boste razumeli logiko formule.
Štetje celic z 2 sklopoma pogojev OR
Če imate opravka samo z dvema nizoma meril OR, zgoraj opisani formuli COUNTIFS dodajte še eno konstanto polja.
Za delovanje formule je potrebna majhna, a ključna sprememba: uporabite vodoravni niz (elementi, ločeni z vejicami) za en niz meril in navpični niz (elementi, ločeni s podpičjem) za drugo. To Excelu pove, da "združi" ali "navzkrižno izračuna" elemente v obeh poljih in vrne dvodimenzionalno polje rezultatov.
Na primer, preštejmo "jabolka", "banane" ali "limone", ki so "dostavljene" ali "na poti":
=SUM(COUNTIFS(A2:A10, {"jabolka", "banane", "limone"}, B2:B10, {"dostavljeno"; "na poti"}))
Upoštevajte podpičje v drugi konstanti polja:
Ker je Excel dvodimenzionalni program, ni mogoče sestaviti tridimenzionalnega ali štiridimenzionalnega polja, zato ta formula deluje le za dva niza meril OR. Če želite računati z več merili, boste morali preiti na kompleksnejšo formulo SUMPRODUCT, ki je pojasnjena v naslednjem primeru.
Štetje celic z več sklopi pogojev OR
Če želite prešteti celice z več kot dvema nizoma meril OR, uporabite funkcijo SUMPRODUCT skupaj s funkcijo ISNUMBER MATCH.
Na primer, preštejmo "jabolka", "banane" ali "limone", ki so "dostavljene" ali "na poti" in so pakirane v "vrečko" ali "pladenj":
=SUMPRODUCT(ISNUMBER(MATCH(A2:A10,{"jabolka", "banane", "limone"},0))*
ISNUMBER(MATCH(B2:B10,{"torba", "pladenj"},0))*
ISNUMBER(MATCH(C2:C10,{"dostavljeno", "v tranzitu"},0)))
V središču formule funkcija MATCH preveri merila tako, da primerja vsako celico v določenem območju z ustrezno konstanto v polju. Če je najdeno ujemanje, vrne relativni položaj vrednosti, če je polje, sicer pa N/A. ISNUMBER pretvori te vrednosti v TRUE in FALSE, ki sta enaki 1 oziroma 0. SUMPRODUCT nadaljuje in pomnoži polja.Ker množenje z ničlo daje ničlo, ostanejo in se seštejejo samo celice, ki imajo v vseh poljih vrednost 1.
Spodnja slika zaslona prikazuje rezultat:
Tako v Excelu uporabite funkciji COUNTIF in COUNTIFS za štetje celic z več pogoji AND in OR. Če si želite podrobneje ogledati formule, obravnavane v tem učbeniku, lahko prenesete naš vzorčni delovni zvezek spodaj. Zahvaljujem se vam za branje in upam, da se naslednji teden vidimo na našem blogu!
Delovni zvezek za prakso
Excel COUNTIF s pogoji OR - primeri (.xlsx datoteka)