Ynhâldsopjefte
Hjoed sil ik jo sjen litte hoe't Excel meardere kritearia filteret fan guon oerienkommende gegevens mei de FILTER-funksje fan Excel. Foardat ik nei de haaddiskusje gean, wol ik jo noch ien ding herinnerje. De funksje FILTER is allinnich beskikber yn Office 365 .
Download Practice Workbook
Filter Meardere wearden.xlsx
Ynlieding ta de FILTER-funksje
Litte wy earst yn 'e kunde komme mei de FILTER -funksje fan Excel om meardere kritearia te filterjen.
Sjoch nei de gegevensset hjirûnder. Wy hawwe de jierren, de gasthearlannen , de kampioenslannen , en de winners-up lannen fan alle FIFA Wrâldbekers yn kolommen B, C, D, en E respektivelik.
No as ik jo freegje, wat binne de jierren as Brazylje waard de kampioen?
Wat sille jo dwaan?
Jo sille wierskynlik troch kolom D (Kampioen) gean en sjen oft der in sel mei in Brasylje deryn of net.
Dan as jo ien fine, ferpleatse jo twa stappen links fan dy sel nei kolom B (jier), en notearje it korrespondearjende jiertal.
En dan geane jo wer del troch kolom D en dogge itselde foar alle sellen dy't in Brasylje yn befetsje.
Sa sille jo alle jierren notearje doe't Brasylje de kampioen wie.
Foar in lytse set gegevens is dit OK . Mar kinne jo werhelje deselde proseduere foar in grutte set 4 kear . 3 kear troch West-Dútslân en 1 kear troch hjoed Dútslân .
No, as jo dizze formule begripe, kinne jo de jierren fine dat de FIFA World Cup waard host troch twa lannen ?
Ik jou dy in oanwizing. D'r moatte in " en " wêze yn 'e namme fan it hostlân. ( "en" tusken twa spaasjes)
Ja. Do hast gelyk. De formule sil wêze:
=FILTER(B5:B25,ISNUMBER(SEARCH("* and *",C5:C25)))
No sjogge wy dat dit mar ien kear bard is yn 2002 , hosted by Súd-Korea en Japan .
Alternatyf opsjes foar it filterjen fan meardere kritearia yn Excel
De hjirboppe neamde metoaden oer it filterjen fan meardere kritearia binne frij nuttich. Mar mei ien neidiel is de funksje FILTER allinnich beskikber yn Office 365 .
Dy't gjin Office 365 hat abonnemint, kin dizze alternative metoaden brûke om guon gegevens te filterjen mei meardere kritearia.
Om de jierren út te finen doe't Itaalje it hostlân of kampioen wie , brûk de ûndersteande formule:
=IF((C5:C25="Italy")+(D5:D25="Italy"),B4:B24,"")
En om út te finen hokker jierren Brasylje kampioen wie nei 1970 , brûk dizze formule:
=IF((B5:B25<=1970)*(D5:D25="Brazil"),B5:B25,"")
Opmerking: Jo kinne de lege sellen net fuortsmiten hawwe lykas de funksje FILTER op dizze manier. En druk op Ctrl + Shift + Enter om de formules yn te fieren.
Hoe te brûkenAvansearre filter yn Excel
Wy sille meardere kritearia tapasse op ien kolom mei berekkene gegevens . Hjir sille wy fine levere produkten mei hoewol mear as 50 mar minder dan 100 . Dêrfoar moatte wy de folgjende formule tapasse. De formule is-
=IF(AND(E550),E5,FALSE)
De útfier yn sel C16 is 55 as de levere kwantiteit falt yn it berik .
Selektearje dêrom it kommando Avansearre ûnder de Sortearje & Filter opsjes fan it ljepblêd Data .
Dêrnei sette wy de hele dataset as it Listberik en sellen C15:C16 as it Kriteriaberik .
Tink de lêste op OK om it resultaat te sjen , d.w.s. in list fan levere produkten mei in hoeveelheid yn it berik fan 50 oant 100.
Konklúzje
Mei dizze metoaden kinne jo alle gegevens filterje troch meardere kritearia yn Excel te behâlden. Witte jo in oare metoade? Lit it ús witte yn 'e kommentaar seksje.
fan gegevens, tink oan 10000 rigen?Lês mear: Hoe kinne jo meardere rigen yn Excel filterje (11 geskikte oanpak)
It antwurd is nee, in grut nee.
Dus wat te dwaan?
Microsoft Excel bringt in ynboude funksje mei de namme FILTER om krekt de deselde taak foar jo.
De funksje FILTER nimt trije arguminten, in berik fan sellen neamd in array , in kritearium neamd omfette, en in wearde mei de namme if_empty dy't weromjûn wurdt yn it gefal dat it kritearium net foldien wurdt foar in sel.
Dus de syntaksis fan de funksje FILTER is:
=FILTER(array,include,[if_empty])
Foar in better begryp, litte wy nei it Brasylje probleem komme. Wy moatte de jierren filterje dat Brasylje de kampioen waard.
De formule om dit te berikken sil wêze:
=FILTER(B5:B25,D5:D25="Brazil","")
Sjoch, wy hawwe alle jierren krigen doe't Brasylje kampioen waard, 1958, 1962, 1970, 1994, en 2002 (Kleurde yn 'e ôfbylding).
No, om it begryp te begripen, litte wy de formule ôfbrekke.
D5:D25="Brazylje" giet troch alles de sellen fan D5 oant D25 en jout in TRUE as it in Brazylje fynt, oars FALSE .
De formule FILTER(B5:B25,D5:D25="Brazylje","") wurdt dan
=FILTER({B5,B6,B7,...,B25},{FALSE,FALSE,...,TRUE,...,FALSE},"")
Foar elke TRUE jout it de neistlizzende sel werom út de array {B5,B6,B7,…,B25}
En foar in FALSE jout it neeresultaat, "" . (Dit is opsjoneel. Standert is gjin resultaat, “” )
Der is in TRUE foar allinnich de sellen B9 , B10 , B12 , B18, en B20 .
Dat jout allinich de ynhâld fan dizze sellen werom, 1958, 1962, 1970, 1994 en 2002.
Dit binne de jierren dat Brazylje de kampioen waard.
Hoopje dat jo begrepen hawwe hoe't de funksje FILTER wurket.
No, as jo dit begripe, kinne jo my dan de formule fertelle om de jierren te finen dat it gastlân de kampioen waard?
Ja. Do hast gelyk. De formule is:
=FILTER(B5:B25,C5:C25=D5:D25,"")
Sjoch, it gastlân waard kampioen yn 1930, 1934, 1966, 1974, 1978, en 1998.
4 manieren om te filterjen mei meardere Kritearia yn Excel
No hawwe wy begrepen hoe't de funksje FILTER wurket. Litte wy dizze kear besykje meardere kritearia tapasse binnen de funksje. Hjir is in oersjoch fan de dataset foar de taak fan hjoed.
1. Filter Meardere wearden fan OR-type
Litte wy ús earst rjochtsje op meardere kritearia fan OF type. Dit binne de kritearia dy't tefreden binne as oan ien of mear as ien kritearia foldien wurdt.
Bygelyks, út 'e boppesteande gegevensset, as ik jo freegje, fertel my ien jier wannear Argentynje waard kampioen of West-Dútslân waard runners-up .
Jo kinne of 1978 , of fertelle 1982 of 1986 .
No, litte wy besykje út te filterjen alle jierren doe't Itaalje of de host wie kampioen , of beide . Dit is in probleem fan OF type meardere kritearia. It is in maklike taak. Foegje gewoan de twa kritearia ta mei in plus (+) teken. Litte wy de ynstruksjes hjirûnder folgje om meardere kritearia yn Excel te filterjen!
Stappen:
- Selektearje earst sel G5 , en skriuw de FILTER-funksje yn dy sel op. De funksje sil wêze:
=FILTER(B5:B25,(C5:C25="Italy")+(D5:D25="Italy"))
- Druk gewoan op Enter op jo toetseboerd. As gefolch krije jo de jierren dat Itaalje de host of kampioen of beide wie it weromkommen fan de FILTER-funksje .
Sjoch, Itaalje wie de gasthear of kampioen of beide yn de jierren 1934, 1938, 1982, 1990, en 2006.
Formule-ôfdieling
No, om it begryp te begripen, litte wy de formule.
- C5:C25="Itaalje" jout in array fan TRUE of FALSE. TRUE doe't Itaalje de gasthear wie, FALSE oars.
- D5:D25="Itaalje" jout ek in array fan TRUE of FALSK . TRUE doe't Itaalje kampioen wie, FALSE oars.
- (C5:C25=”Itaalje”)+(D5:D25=”Itaalje”) foeget twa arrays fan Booleaanske wearden ta, TRUE en FALSE . Mar it beskôget elk TRUE as in 1 ,en elk FALSE as 0 .
- Sa jout it in 2 as oan beide kritearia foldien is, in 1 as der oan mar ien kritearium foldien is, en in 0 as der oan gjin kritearium foldien is.
De formule wurdt no:
=FILTER({B5,B6,B7,...,B25},{0,2,1,...,0})
It beskôget de nûmers grutter as nul (0 en 1 hjir) as WAAR en de nullen as FALSE.
Sa jout it de jierren werom út kolom B as it tsjin in getal is grutter dan 0 en jout oars gjin resultaat.
No, as jo begripe hoe't de funksje FILTER wurket mei meardere kritearia fan OR-type, kinne jo in antwurd jaan op ien fraach?
Wat sil de formule wêze om de jierren te filterjen doe't Brazylje de kampioen waard of Italië waard de runners-up of beide?
Ja. Do hast gelyk. De formule sil wêze:
=FILTER(B5:B25,(D5:D25="Brazil")+(E5:E25="Italy"))
2. FILTER-funksje tapasse foar EN-kritearium
No sille wy rjochtsje op meardere kritearia fan EN typen. Dat betsjut dat wy oan alle kritearia foldwaan moatte om in TRUE resultaat te krijen, oars FALSE .
Wy witte, oant it jier 1970 , de FIFA wrâldbeker waard de "Jules Rimet" trofee neamd. Nei 1970 begûn it te wurden de FIFA wrâldbeker . Dus myn earste fraach is, wat binne de jierren doe't Brazylje de "Jules Rimet" trofee wûn?
Der binne twa kritearia hjir.
- Earst, it jiermoat minder wêze as of gelyk oan 1970 .
- Twadde, it kampioen lân moat Brasylje wêze.
En oan beide kritearia moatte foldien wurde. Hoe kinne jo dizze taak útfiere?
Hiel ienfâldich. Fermannichfâldigje dizze kear de twa kritearia binnen de funksje FILTER mei in (*) teken. Litte wy de ynstruksjes hjirûnder folgje om meardere kritearia yn Excel te filterjen!
Stappen:
- Selektearje earst sel G5 , en skriuw de FILTER-funksje yn dy sel op. De funksje sil wêze:
=FILTER(B5:B25,(B5:B25<=1970)*(D5:D25="Brazil"))
Formule-ôfdieling
-
(B5:B25<=1970
jout in TRUE as it jier minder as of gelyk is oan 1970, oars FALSE . -
(D5:D25="Brazil")
jout in TRUE as it kampioenslân Brazylje is, oars FALSE. -
(B5:B25<=1970)*(D5:D25="Brazil")
fermannichfâldigje twa arrays fan TRUE en FALSE , mar beskôget elk TRUE as 1 en elk FALSE as 0 . - Sa jout it in 1 as oan beide kritearia foldien wurdt, oars jout it in 0.
- No wurdt de formule:
=FILTER({B4,B5,B6,...,B24},{0,0,...,1,1,...,0})
- It jout it jier yn kolom B as it tsjin in 1 stiet en jout gjin resultaat as it tsjin in 0 stiet.
- Druk gewoan op Enter op jo toetseboerd. As gefolch krije jo de jierren dat Brasylje de kampioen wie fan 'e "Jules Rimet" -trofee dy't it weromkommen is fan de FILTER-funksje . Sjen,oant 1970 wûn Brazylje trije kear , yn 1958, 1962, en 1970 .
Sa kinne wy alle gegevens filterje dy't foldogge oan meardere kritearia fan EN type.
No kinne jo my de formule fertelle om de jierren foar te finen. 2000 doe't Brasylje de kampioen wie en Itaalje wie de runners-up?
De formule sil wêze:
=FILTER(B5:B25,(B5:B25<2000)*(D5:D25="Brazil")*(E5:E25="Italy"))
Gelykbere lêzings:
- Meardere filters tapasse yn Excel [Metoaden + VBA]
- Hoe kinne jo gegevens yn Excel filterje mei formule
- Excel-filtergegevens basearre op selwearde (6 effisjinte manieren)
3. Meardere kritearia filterje mei kombinaasje fan EN- en OR-typen yn Excel
Geval 1: OF binnen OR
No as ik jo in fraach stel, wat binne de jierren doe't in Súdamerikaansk lân ( Brazylje, Argentynje, of Urûguay ) wie of kampioen of runners-up ?
Kinne jo it antwurd jaan op myn fraach?
Let goed op. Hjir moat it kampioenslân Brazylje, Argentynje, of Urûguay wêze. Of it Runners-Up-lân moat Brazylje, Argentynje of Urûguay wêze . Of beide. Dit is in probleem fan OR binnen OR-type. Meitsje jo gjin soargen, folgje gewoan de ynstruksjes hjirûnder om meardere kritearia yn Excel te filterjen!
Stappen:
- Selektearje earst sel G5 , en skriuw de funksjes yn dy sel op. De funksjes sillewêze:
=FILTER(B5:B25,(ISNUMBER(MATCH(D5:D25,{"Brazil","Argentina","Uruguay"},0)))+ (ISNUMBER(MATCH(E5:E25,{"Brazil","Argentina","Uruguay"},0))))
Formule-ûnderdieling
-
MATCH(D4:D24,{"Brazil","Argentina","Uruguay"},0)
jout 1 as it kampioensteam Brazylje is, 2 as it kampioensteam Argentynje is, 3 as it kampioensteam is is Urûguay, en in flater (N/A) as it kampioensteam gjin fan harren is. -
ISNUMBER(MATCH(D4:D24,{"Brazil","Argentina","Uruguay"},0))
konvertearret de nûmers yn TRUE en de flaters yn FALSE . - Lyksa jout
ISNUMBER(MATCH(E4:E24,{"Brazil","Argentina","Uruguay"},0))
in TRUE werom as it lân dat twadde is as Brazylje, Argentynje of Urûguay. En FALSE - Dus,
(ISNUMBER(MATCH(D4:D24,{"Brazil","Argentina","Uruguay"},0)))+(ISNUMBER(MATCH(E4:E24,{"Brazil","Argentina","Uruguay"},0)))
jout in 1 of 2 as of in Súd-Amerikaansk lân kampioen is, of runners up, of beide. - En jout oars nul.
- De formule wurdt:
=FILTER({B4,B5,...,B24},{2,0,0,2,...,1,0})
- It jout in jier werom fan kolom B as it in getal fynt dat grutter is as nul, en oars gjin resultaat jout.
- Druk dus gewoan op Enter op jo toetseboerd . As resultaat sille jo de jierren krije dat in Súdamerikaansk lân ( Brasylje, Argentynje, of Urûguay ) óf kampioen as runners-up wie . Sjoch, wy hawwe alle jierren fûn doe't in Súd-Amerikaansk lân of kampioen of runners-up wie.
Case 2: OR binnen EN
As jo de boppesteande formule begripe, kinne jo dan de formule fertelle om de jierren te bepalen doe't sawol de kampioen as de runners-up fan Súd-Amearika wiene (Brasylje, Argentynje, of Urûguay) ?
Hiel maklik. Ferfang gewoan it (+) -teken fan 'e foarige formule troch in (*) -teken. De funksjes binne:
=FILTER(B4:B24,(ISNUMBER(MATCH(D4:D24,{"Brazil","Argentina","Uruguay"},0)))*(ISNUMBER(MATCH(E4:E24,{"Brazil","Argentina","Uruguay"},0))))
Sjoch, dit barde mar twa kear, yn 1930 en 1950.
4. Brûk de FILTER-funksje yn meardere kolommen
As jo no mear foarsichtich opmerke, sille jo fine dat oant it jier 1990 in lân wie mei de namme West-Dútslân . En nei 1990 is der gjin West-Dútslân . Wat is Dútslân . De twa binne eins út itselde lân. Yn 1990 ferienigen de twa Dútslân (East en West) om it hjoeddeiske Dútslân te foarmjen.
No kinne jo de jierren identifisearje wêryn Dútslân wie de kampioen ? Gjin saak East of West .
Jo moatte de FILTER-funksje brûke yn meardere kolommen.
De formule sil wêze:
=FILTER(B5:B25,ISNUMBER(SEARCH("*Germany",D5:D25)))
Formule-ûnderdieling
-
SEARCH("*Germany",D5:D25)
sykopdracht foar alles dat Dútslân op it ein hat yn 'e array D5 oant D25 . As jo Dútslân yn it midden nedich hawwe, brûk dan “*Dútslân*”. - It jout in 1 as it in wedstriid fynt (West-Dútslân en Dútslân) en jout werom in Flater
-
ISNUMBER(SEARCH("*Germany",D5:D25))
konvertearret de 1's yn TRUE , en de flaters yn FALSE . - Uteinlik jout
FILTER(B5:B25,ISNUMBER(SEARCH("*Germany",D5:D25)))
de jierren werom út kolom B as it foar in TRUE stiet, oars jout gjin resultaat.
- Sjoch Dútslân wie de kampioen