Kako filtrirati z več kriteriji v Excelu (4 preprosti načini)

  • Deliti To
Hugh West

Danes vam bom pokazal, kako Excel filtrira več meril nekaterih ujemajočih se podatkov z uporabo funkcija FILTER Preden preidemo na glavno razpravo, bi vas rad opozoril na nekaj. FILTER je na voljo samo v funkciji Office 365 .

Prenesi delovni zvezek za prakso

Filtriranje več vrednosti.xlsx

Uvod v funkcijo FILTER

Spoznajmo Excelov FILTER za filtriranje več meril.

Oglejte si spodnji niz podatkov. države gostiteljice , je države prvakinje in države, ki so se uvrstile na drugo mesto vseh Svetovni pokali FIFA v stolpcih B, C, D, in . E oziroma.

Če vas vprašam, katera so leta, ko Brazilija postal prvak?

Kaj boste storili?

Verjetno boste šli skozi stolpec D (prvak) in preverite, ali obstaja celica, ki vsebuje Brazilija v njem ali ne.

Ko jo najdete, se premaknete dva koraka levo od te celice v stolpec B (Leto) in zapišite ustrezno leto.

Nato se ponovno spustite v stolpec D in enako storite za vse celice, ki vsebujejo Brazilija v njem.

Tako boste zabeležili vsa leta, ko Brazilija je bil prvak.

Za majhen nabor podatkov je to V REDU Ali lahko enak postopek ponovite za večji nabor podatkov? 10000 vrstice?

Preberite več: Kako filtrirati več vrstic v Excelu (11 primernih pristopov)

Odgovor je ne, velik ne.

Kaj torej storiti?

Microsoft Excel ima vgrajeno funkcijo, imenovano FILTER da za vas opravi popolnoma enako nalogo.

Spletna stran FILTER funkcija sprejme tri argumente, obseg celic, imenovan polje , merilo, imenovano vključujejo, in vrednost z imenom if_empty ki se vrne, če merilo ni izpolnjeno za nobeno celico.

Zato je sintaksa FILTER funkcija je:

=FILTER(array,include,[if_empty])

Za boljše razumevanje preidimo na Brazilija problem. Izločiti moramo leta, ko Brazilija je postal prvak.

Formula za dosego tega cilja je:

=FILTER(B5:B25,D5:D25="Brazil","")

Vidite, imamo vsa leta, ko Brazilija postal prvak, 1958, 1962,1970, 1994, in . 2002 (Obarvano na sliki).

Za lažje razumevanje razčlenimo formulo.

D5:D25="Brazilija" gre skozi vse celice od D5 na . D25 in vrne TRUE če najde Brazilija , v nasprotnem primeru FALSE .

Formula FILTER(B5:B25,D5:D25="Brazilija","") potem postane

=FILTER({B5,B6,B7,...,B25},{FALSE,FALSE,...,TRUE,...,FALSE},"")

Za vsak TRUE , vrne sosednjo celico iz polja {B5,B6,B7,...,B25}

In za FALSE , ne vrne nobenega rezultata, "" . (To ni obvezno. Privzeto je brez rezultata, "" )

Obstaja TRUE samo za celice B9 , B10 , B12 , B18, in . B20 .

Tako vrne samo vsebino teh celic, 1958, 1962, 1970, 1994 in 2002.

V teh letih je Brazilija postala prvakinja.

Upam, da ste razumeli, kako FILTER funkcija deluje.

Če to razumeš, ali mi lahko poveš formulo za ugotavljanje let, ko je država gostiteljica postala prvakinja?

Da, prav imate:

=FILTER(B5:B25,C5:C25=D5:D25,””)

Država gostiteljica je postala prvakinja v 1930, 1934, 1966, 1974, 1978, in . 1998.

4 načini filtriranja z več kriteriji v Excelu

Zdaj smo razumeli, kako FILTER Poskusimo tokrat v funkciji uporabiti več meril. Tukaj je pregled nabora podatkov za današnjo nalogo.

1. Filtriranje več vrednosti tipa OR

Najprej se osredotočimo na več meril ALI To so merila, ki so izpolnjena, če je izpolnjeno eno ali več meril.

Na primer, če vas na podlagi zgornjega nabora podatkov vprašam, povejte mi eno leto, ko Argentina postal prvak ali Zahodna Nemčija postal drugouvrščeni .

Lahko poveste, da 1978 ali 1982 ali 1986 .

Poskusimo zdaj filtrirati vsa leta, ko Italija je bil bodisi gostitelj ali prvak ali oba To je problem ALI vnesite več meril. To je preprosta naloga. Samo dodajte dve merili s plusom (+) znak. Sledimo spodnjim navodilom za filtriranje več meril v Excelu!

Koraki:

  • Najprej izberite celico G5 in zapišite funkcija FILTER v tej celici. Funkcija bo:
=FILTER(B5:B25,(C5:C25="Italy")+(D5:D25="Italy"))

  • Zato preprosto pritisnite Vnesite na tipkovnici. Tako boste dobili leta, ko je bila Italija gostitelj ali prvak ali oba ki je povratna vrednost funkcija FILTER .

Oglejte si, Italija je bil bodisi gostitelj, bodisi prvak ali oboje v letih 1934, 1938, 1982, 1990, in . 2006.

Razčlenitev formule

Zaradi lažjega razumevanja razčlenimo formulo.

  • C5:C25="Italija" vrne polje TRUE ali LAŽNO. TRUE ko je bila gostiteljica Italija, FALSE v nasprotnem primeru.
  • D5:D25="Italija" vrne tudi polje TRUE ali FALSE . TRUE ko je bila Italija prvak, FALSE v nasprotnem primeru.
  • (C5:C25="Italija")+(D5:D25="Italija") doda dve polji logičnih vrednosti, TRUE in . FALSE . Vendar upošteva vsako TRUE kot 1 in vsak FALSE kot 0 .
  • Zato vrne 2 če sta obe merili izpolnjeni, a 1 kadar je izpolnjeno samo eno merilo, in a 0 če ni izpolnjeno nobeno merilo.

Formula zdaj postane:

=FILTER({B5,B6,B7,...,B25},{0,2,1,...,0})

Številke, ki so večje od nič (tukaj 0 in 1), obravnava kot TRUE in ničle kot LAŽNO.

Tako vrne leta iz stolpca B ko se sooči s številom, ki je večje od 0 v nasprotnem primeru ne vrne nobenega rezultata.

Če razumete, kako FILTER funkcija deluje z več merili vrste OR, ali lahko odgovorite na eno vprašanje?

Po kakšni formuli bomo izločili leta, ko je Brazilija postala prvak ali Italija prvak. drugouvrščeni ali oboje?

Da, prav imate:

=FILTER(B5:B25,(D5:D25="Brazil")+(E5:E25="Italy"))

2. Uporabite funkcijo FILTER za kriterij AND

Zdaj se bomo osredotočili na več meril na spletnem mestu IN To pomeni, da moramo izpolniti vsa merila, da dobimo TRUE rezultat, v nasprotnem primeru FALSE .

Vemo, do leta 1970 , je Svetovni pokal FIFA se je imenoval "Jules Rimet" trofeja. po 1970 , se je začel imenovati Svetovni pokal FIFA Moje prvo vprašanje je, katera so leta, ko Brazilija osvojil "Jules Rimet" trofeja?

Obstajajo dve merili tukaj.

  • Prvič, leto mora biti manjše ali enako 1970 .
  • Drugič, prvak država mora biti Brazilija .

Izpolniti je treba obe merili. Kako opraviti to nalogo?

Preprosto. Pomnožite obe merili znotraj FILTER s funkcijo (*) tokrat se podpišite. Sledimo spodnjim navodilom za filtriranje več meril v Excelu!

Koraki:

  • Najprej izberite celico G5 in zapišite funkcija FILTER v tej celici. Funkcija bo:
=FILTER(B5:B25,(B5:B25<=1970)*(D5:D25="Brazil"))

Razčlenitev formule

  • (B5:B25<=1970 vrne TRUE če je leto manjše ali enako letu 1970, sicer FALSE .
  • (D5:D25="Brazilija") vrne TRUE če je država prvakinja Brazilija, sicer LAŽNO.
  • (B5:B25<=1970)*(D5:D25="Brazil") pomnoži dve polji TRUE in . FALSE , vendar upošteva vsako TRUE kot 1 in vsak FALSE kot 0 .
  • Zato vrne 1 če sta obe merili izpolnjeni, sicer vrne 0.
  • Zdaj je formula naslednja: =FILTER({B4,B5,B6,...,B24},{0,0,...,1,1,...,0})
  • Vrne leto v stolpcu B ko se sooči z 1 in ne vrne nobenega rezultata, kadar naleti na 0 .
  • Zato preprosto pritisnite Vnesite na tipkovnici. Posledično boste dobili leta, ko Brazilija je bil prvak o "Jules Rimet" trofeja, ki je vrnitev funkcija FILTER . Glej, do 1970 , Brazilija je zmagala trikrat , v 1958, 1962, in . 1970 .

Tako lahko filtriramo vse podatke, ki izpolnjujejo več meril IN vrsta.

Ali mi lahko poveste formulo za ugotavljanje let pred 2000 ko Brazilija je bila prvakinja, Italija pa je bila drugouvrščena?

Formula je naslednja:

=FILTER(B5:B25,(B5:B25<2000)*(D5:D25="Brazil")*(E5:E25="Italy"))

Podobna branja:

  • Uporaba več filtrov v Excelu [metode + VBA]
  • Kako filtrirati podatke v Excelu z uporabo formule
  • Excelovo filtriranje podatkov na podlagi vrednosti celice (6 učinkovitih načinov)

3. Filtriranje več meril s kombinacijo vrst AND in OR v programu Excel

Primer 1: najbolj oddaljena regija znotraj najbolj oddaljene regije

Če vas vprašam, katera so leta, ko Južna Amerika država ( Brazilija, Argentina ali Urugvaj ) je bil bodisi prvak ali drugouvrščeni ?

Ali lahko odgovorite na moje vprašanje?

Pozorno opazujte. Tu mora biti država prvakinja Brazilija, Argentina, ali Urugvaj . Ali pa mora biti država, ki se poteguje za drugo mesto Brazilija, Argentina ali Urugvaj To je težava vrste OR znotraj vrste OR. Ne skrbite, preprosto sledite spodnjim navodilom za filtriranje več meril v Excelu!

Koraki:

  • Najprej izberite celico G5 in zapišite funkcije v tej celici. Funkcije bodo:
=FILTER(B5:B25,(ISNUMBER(MATCH(D5:D25,{"Brazilija", "Argentina", "Urugvaj"},0)))+ (ISNUMBER(MATCH(E5:E25,{"Brazilija", "Argentina", "Urugvaj"},0))))

Razčlenitev formule

  • MATCH(D4:D24,{"Brazilija", "Argentina", "Urugvaj"},0) vrne 1 če je zmagovalna ekipa Brazilija, 2 če je prvak Argentina, 3 če je ekipa prvak Urugvaj, in napaka (N/A) če ekipa prvak ni nobena od njih.
  • ISNUMBER(MATCH(D4:D24,{"Brazilija", "Argentina", "Urugvaj"},0)) pretvori številke v TRUE in napake v FALSE .
  • Podobno, ISNUMBER(MATCH(E4:E24,{"Brazilija", "Argentina", "Urugvaj"},0)) vrne TRUE če je država, ki je zasedla drugo mesto, Brazilija, Argentina ali Urugvaj. FALSE
  • Torej, (ISNUMBER(MATCH(D4:D24,{"Brazilija", "Argentina", "Urugvaj"},0)))+(ISNUMBER(MATCH(E4:E24,{"Brazilija", "Argentina", "Urugvaj"},0))) vrne 1 ali 2 če je južnoameriška država prvakinja, drugouvrščena ali oboje.
  • V nasprotnem primeru vrne nič.
  • Enačba se glasi: =FILTER({B4,B5,...,B24},{2,0,0,2,...,1,0})
  • Vrne leto iz stolpca B če najde število, večje od nič, v nasprotnem primeru pa ne vrne nobenega rezultata.
  • Zato preprosto pritisnite Vnesite na tipkovnici. Tako boste dobili leta, ko se Južna Amerika država ( Brazilija, Argentina ali Urugvaj ) je bil bodisi prvak ali drugouvrščeni. Poiskali smo vsa leta, ko je bila južnoameriška država prvak ali drugouvrščena.

Primer 2: OR znotraj AND

Če razumete zgornjo formulo, ali lahko poveste formulo za določitev let, ko sta obe prvak in drugouvrščeni so bili iz Južna Amerika (Brazilija, Argentina, ali Urugvaj) ?

Preprosto. Samo zamenjajte (+) znak prejšnje formule z (*) znak. Funkcije so:

=FILTER(B4:B24,(ISNUMBER(MATCH(D4:D24,{"Brazilija", "Argentina", "Urugvaj"},0)))*(ISNUMBER(MATCH(E4:E24,{"Brazilija", "Argentina", "Urugvaj"},0))))

To se je zgodilo le dvakrat, leta 1930 in 1950.

4. Uporaba funkcije FILTER v več stolpcih

Če boste natančneje opazovali, boste ugotovili, da je do leta 1990 , je obstajala država z imenom Zahodna Nemčija . In po 1990 , ni Zahodna Nemčija . Kaj je Nemčija . Pravzaprav sta iz iste države. 1990 , je dve Nemčiji (Vzhodna in . Zahod) združene v sedanjo Nemčijo.

Ali lahko zdaj prepoznate leta. Nemčija je bil prvak ? Ni važno. Vzhodno ali West .

Funkcijo FILTER morate uporabiti v več stolpcih.

Formula je naslednja:

=FILTER(B5:B25,ISNUMBER(SEARCH("*Nemčija",D5:D25))

Razčlenitev formule

  • SEARCH("*Nemčija",D5:D25) v polju išče vse, kar ima na koncu zapisano Nemčija D5 na . D25 Če potrebujete Nemčijo na sredini, uporabite "*Nemčija*".
  • Vrača 1 če najde ujemanje (Zahodna Nemčija in Nemčija) in vrne Napaka
  • ISNUMBER(SEARCH("*Nemčija",D5:D25)) pretvori številke 1 v TRUE in napake v FALSE .
  • Končno, FILTER(B5:B25,ISNUMBER(SEARCH("*Nemčija",D5:D25)) vrne leta iz stolpca B ko se sooči z TRUE , sicer ne vrne nobenega rezultata.
  • Nemčija je bila prvak 4-krat . 3 krat z Zahodna Nemčija in . 1 čas po sedanjosti Nemčija .

Če razumete to formulo, ali lahko ugotovite, v katerih letih je Svetovni pokal FIFA je gostil dve državi ?

Dajem vam namig. " in " v imenu države gostiteljice. ( "in" med dvema prostoroma)

Da, prav imate:

=FILTER(B5:B25,ISNUMBER(SEARCH("* in *",C5:C25)))

Zdaj vidimo, da se je to zgodilo le enkrat v 2002 , ki ga gosti Južna Koreja in . Japonska .

Alternativne možnosti za filtriranje več meril v programu Excel

Zgoraj omenjene metode za filtriranje več meril so zelo uporabne. ena pomanjkljivost , je FILTER funkcija je na voljo le v Office 365 .

Tisti, ki nimajo Office 365 lahko uporabite te alternativne metode za filtriranje nekaterih podatkov z več merili.

Ugotovite, v katerih letih Italija je bil država gostiteljica ali prvak , uporabite spodnjo formulo:

=IF((C5:C25="Italy")+(D5:D25="Italy"),B4:B24,"")

In da bi ugotovili, v katerih letih Brazilija je bil prvak do 1970 , uporabite to formulo:

=IF((B5:B25<=1970)*(D5:D25="Brazil"),B5:B25,"")

Opomba: Ne morete odstraniti praznih celic, kot je to storil FILTER funkcijo na ta način. In pritisnite Ctrl + Shift + Enter za vnos formul.

Kako uporabiti napredni filter v programu Excel

Uporabili bomo več meril na spletni strani . en stolpec uporaba izračunani podatki Tukaj bomo poiščite dobavljeni izdelki s spletno stranjo . količina več kot 50 vendar manj kot 100 Za to moramo uporabite . naslednje formula . formula je-

=IF(AND(E550),E5,FALSE)

Rezultat v celici C16 je . 55 kot dobavljena količina se zmanjša v obseg .

Zato izberite Napredno pod ukazom Razvrsti in filtriraj možnosti iz Podatki zavihek.

Po tem vstavimo celoten nabor podatkov kot Razpon seznama in . celice C15: C16 kot Razpon meril .

Nazadnje pritisnite V REDU da si ogledate rezultat, tj. seznam dobavljeni izdelki ki ima količina v območju od 50 do 100.

Zaključek

S temi metodami lahko v Excelu filtrirate vse podatke z ohranjanjem več meril. Ali poznate še kakšno drugo metodo? Povejte nam v razdelku s komentarji.

Hugh West je zelo izkušen trener Excela in analitik z več kot 10-letnimi izkušnjami v industriji. Po izobrazbi je diplomirani računovodstvo in finance ter magisterij poslovne administracije. Hugh ima strast do poučevanja in je razvil edinstven pristop k poučevanju, ki ga je enostavno slediti in razumeti. Njegovo strokovno znanje o Excelu je pomagalo na tisoče študentom in strokovnjakom po vsem svetu, da so izboljšali svoje sposobnosti in se izkazali v karieri. Prek svojega bloga Hugh deli svoje znanje s svetom, ponuja brezplačne vadnice za Excel in spletno usposabljanje, ki posameznikom in podjetjem pomaga doseči njihov polni potencial.