Ynhâldsopjefte
De tutorial lit sjen hoe't jo Avansearre filter brûke yn Excel en biedt in oantal foarbylden fan net-triviale kritearia berik foar it meitsjen fan in haadlettergefoelige filter, fyn wedstriden en ferskillen tusken twa kolommen, ekstrahearje records dy't oerienkomme mei in lytsere list , en mear.
Yn ús foarige artikel hawwe wy ferskate aspekten fan Excel Advanced Filter besprutsen en hoe't jo it brûke kinne om rigen te filterjen mei EN en ek OR-logika. No't jo de basis witte, litte wy sjen nei mear komplekse kritearia-berikfoarbylden dy't nuttich wêze kinne foar jo wurk.
In formule-basearre kriteariaberik ynstelle
Om't de measte foarbylden fan 'e kriteariabereiken dy't yn dizze tutorial besprutsen binne ferskate formules sille befetsje, litte wy begjinne mei it definiearjen fan de essensjele regels om se goed yn te stellen. Fertrou my, dit lytse stikje teory sil jo in protte tiid besparje en de kopke besparje fan it oplossen fan jo komplekse kriteariaberik dy't meardere betingsten befetsje op basis fan formules.
- De formule dy't jo brûke yn it kriteariaberik moat evaluearje op TRUE of FALSE .
- It kriteariumberik moat op syn minst 2 sellen befetsje: formulesel en kopsel.
- De kopsel fan de formule-basearre kritearia moat leech wêze as oars as ien fan 'e kopteksten fan 'e tabel (listberik).
- Foar de formule te evaluearjen foar elke rige yn it listberik, ferwize nei de boppesteom wurkdagen te filterjen yn Excel
Om wurkdagen te filterjen, wizigje de boppesteande formule sadat it 1's (snein) en 7's (sneon) sil ferlitte:
EN(WEEKDAY( datum ) 7, WEEKDAY( datum )1)Foar ús foarbyldtabel sil de folgjende formule in traktaasje wurkje:
=AND(WEEKDAY(B5)7, WEEKDAY(B5)1)
Dêrneist kinne jo ien tafoegje mear betingst om lege sellen út te filterjen:
=B5""
Om de datums yn jo wurkblêden op oare manieren te filterjen, fine jo gewoan de relevante Datumfunksje en aarzelje net om it te brûken yn jo avansearre filterkritearia berik.
No, dit is hoe't jo it Avansearre filter yn Excel brûke mei komplekse kritearia. Fansels binne jo opsjes net beheind ta de foarbylden besprutsen yn dizze tutorial, ús doel wie gewoan om jo in pear ynspirearjende ideeën te jaan dy't jo op it goede spoar sille sette. Unthâld dat de wei nei behearsking is ferhurde mei praktyk, jo wolle miskien ús foarbylden downloade mei de ûndersteande keppeling en se útwreidzje of reverse-manipulearje foar better begryp. Ik tankje jo foar it lêzen en hoopje jo nije wike op ús blog te sjen!
Oefenwurkboek
Excel Advanced Filter foarbylden (.xlsx triem)
sel mei gegevens mei in relative referinsje lykas A1. - Foar de formule dy't allinich evaluearre wurde moat foar in spesifike sel of berik fan sellen , ferwize nei dy sel of berik brûk in absolute referinsje lykas $A$1.
- As jo ferwize nei it listberik yn 'e formule, brûk dan altyd absolute selferwizings.
- As jo meardere betingsten leverje, fier dan alle de kritearia op deselde rige om se te ferbinen mei in EN -operator, en set elk kritearium op in aparte rige om se te ferbinen mei de OF -operator.
Excel Advanced Filter Criteria berik foarbylden
De folgjende foarbylden sille jo leare hoe't jo jo eigen filters meitsje kinne yn Excel om mear komplekse taken te behanneljen dy't net kinne wurde útfierd mei it reguliere Excel AutoFilter.
Case- gefoelich filter foar tekstwearden
Lyt as Excel AutoFilter is it Avansearre filter-ark fan natuere net-gefoelich, wat betsjut dat it gjin ûnderskied makket tusken haad- en lytse letters by it filterjen fan tekstwearden. Jo kinne lykwols maklik in haadlettergefoelige sykopdracht útfiere troch de EXACT-funksje yn de avansearre filterkritearia te brûken.
Bygelyks, om rigen te filterjen dy't Banana befetsje, negearje BANANA en banaan , fier de folgjende formule yn yn it kriteariaberik:
=EXACT(B5, "Banana")
Wêr't B de kolom is mei de itemnammen, en rige 5 de earste gegevensrige is .
En dan, tapasse Excel Advanced Filtertroch te klikken op de knop Avansearre op it ljepblêd Gegevens , en konfigurearje it Listberik en Kriteriaberik lykas werjûn yn it skermôfbylding hjirûnder. Tink derom dat it Kriteriaberik 2 sellen omfettet - de kopsel en de formulesel .
Opmerking. De boppesteande ôfbylding, lykas alle fierdere skermôfbyldings yn dizze tutorial, litte formules sjen yn 'e sellen fan it kriteariabereik allinich foar de dúdlikens. Yn jo echte wurkblêden soe de formulesel TRUE of FALSE moatte weromjaan, ôfhinklik fan oft de earste rige gegevens oerienkomt mei de kritearia of net:
Filter wearden boppe of ûnder gemiddeld yn in kolom
By it filterjen fan numerike wearden wolle jo faaks allinich de sellen werjaan dy't boppe of ûnder in gemiddelde wearde yn 'e kolom lizze. Bygelyks:
Om rigen te filterjen mei subtotaal boppe gemiddeld , brûk de folgjende formule yn it kriteariumberik:
=F5>AVERAGE($F$5:$F$50)
Om rigen te filterjen mei subtotaal ûnder gemiddeld , brûk de folgjende formule:
=F5
Tink asjebleaft dat wy in relative ferwizing brûke om te ferwizen nei de top-sel mei gegevens ( F5), en absolute ferwizings om it hiele berik te definiearjen wêrfoar jo it gemiddelde wolle berekkenje, útsein de kolomkop ($F$5:$F$50).
De folgjende skermôfbylding toant de boppesteande gemiddelde formule yn aksje. :
Dy't dy't bekend binne mei Excel-nûmerFilters kinne har ôffreegje, wêrom soe immen de muoite dwaan om in avansearre filter te brûken, wylst de ynboude nûmerfilters al de opsjes Bovengemiddeld en Belowgemiddeld hawwe? Dat is krekt, mar de ynboude Excel-filters kinne net brûkt wurde mei de OR-logika!
Dus, om dit foarbyld fierder te nimmen, litte wy rigen filterje wêr't Subtotaal (kolom F) OF Septimber ferkeap (kolom E) is boppegemiddeld. Stel hjirfoar it kriteariumberik yn mei de OR-logika troch elke betingst op in aparte rige yn te fieren. As resultaat krije jo in list mei items mei de boppeste gemiddelde wearden yn beide kolom E of F:
Filter rigen mei blanks of net-blanks
Lykas elkenien wit, hat Excel Filter in ynboude opsje foar it filterjen fan lege sellen. Troch it karfakje (Lege) yn it AutoFilter-menu te selektearjen of út te selektearjen, kinne jo allinich de rigen werjaan dy't lege of net-lege sellen hawwe yn ien of mear kolommen. It probleem is dat it ynboude Excel-filter foar blanks allinich kin wurkje mei de EN-logika.
As jo lege of net-lege sellen filterje wolle mei de OR-logika, of brûk de lege / net-leech betingsten tegearre mei guon oare kritearia, set in avansearre filterkritearia berik yn mei ien fan de folgjende formules:
Filter blanks :
top_cell =""Filter non-blanks:
top_cell ""Filterearjen fan lege sellen mei de OR-logika
Om rigen te filterjen dy'thawwe in lege sel yn kolom A of B, of yn beide kolommen, konfigurearje it berik fan Avansearre filterkritearia op dizze manier:
-
=A6=""
-
=B6=""
Dêr't 6 de boppeste rige gegevens is.
Filterearjen fan net-lege sellen mei OR lykas EN-logika
Om mear begryp te krijen fan hoe't Excel's Avansearre filter wurket mei meardere kritearia, litte wy rigen filterje yn ús foarbyldtabel mei de folgjende betingsten:
- Of Regio (kolom A) of Item (kolom B) moat net-leech wêze, en
- Subtotaal (kolom C) moat grutter wêze as 900.
Om it oars te sizzen , wolle wy rigen sjen litte dy't foldogge oan de folgjende betingsten:
( Subtotaal >900 EN Regio =net-leech) OF ( Subtotaal >900 EN Item =net-leech)
Sa't jo al witte, yn 'e Excel Avansearre Filterkritearia berik, de betingsten ferbûn mei de EN-logika moatte yn deselde rige ynfierd wurde, en de betingsten ferbûn mei de OR-logika - op ferskate rigen:
Om't ien kritearium yn dit foarbyld wurdt útdrukt mei in formule (non-blanks) en de oare omfiemet in ferliking operator (Sub-totaal & GT; 900), lit my jo herinnerje dat:
- Kriteria foarme mei fergelikingsoperators moatte kopteksten krekt lyk oan de tabelkoppen hawwe, lykas de Subtotaal -kritearia yn it boppesteande skermôfbylding.
- Formule-basearre kritearia moatte hawweof in lege koptekstel of in koptekst dy't net oerienkomt mei ien fan 'e tabelkoppen, lykas de Non-blanks kritearia yn it boppesteande skermôfbylding.
Hoe kinne jo boppe/ûnder ekstrahearje N records
Lykas jo wierskynlik witte, hawwe de ynboude Excel-nûmerfilters in opsje om de top 10 of ûnderste 10 items te werjaan. Mar wat as jo de top 3 of ûnderste 5 wearden moatte filterje? Yn dit gefal komt Excel Advanced Filter mei de folgjende formules fan pas:
Extract top N items:
top_cell >=LARGE( berik , N)Extract bottom N items:
top_cell <=SMALL( berik , N)Foar Bygelyks, om top 3 subtotalen te filterjen, meitsje it kriteariumberik mei dizze formule:
=F5>=LARGE($F$5:$F$50,3)
Om ûnderste 3 subtotalen te ekstrahearjen, brûk dizze formule:
=F5>=SMALL($F$5:$F$50,3)
Wêr't F5 de boppeste sel is mei gegevens yn 'e kolom Subtotaal (útsein de kolomkop).
De folgjende skermôfbylding lit de top 3-formule yn aksje sjen:
Opmerking. As it listberik in pear rigen befettet mei deselde wearden dy't yn 'e boppeste/ûnderste N-list falle, sille al sokke rigen werjûn wurde, lykas werjûn yn 'e skermôfdruk hjirûnder:
Filter foar oerienkomsten en ferskillen tusken twa kolommen
Ien fan ús eardere artikels ferklearre in ferskaat oan manieren om twa kolommen yn Excel te fergelykjen en oerienkomsten en ferskillen tusken har te finen. Neist Excel-formules, regels foar betingsten opmaaken it ark foar duplikaatferwidering bedekt yn it boppesteande tutorial, kinne jo ek Excel's Advanced Filter brûke om rigen te ekstrahearjen dy't deselde as ferskillende wearden hawwe yn twa of mear kolommen. Om dit te dwaan, ynfiere ien fan 'e folgjende ienfâldige formules yn it kriteariumberik:
- Filter foar oerienkomsten (duplikaten) yn 2 kolommen:
=B5=C5
=B5C5
Wêr't B5 en C5 de boppeste sellen binne mei gegevens yn de twa kolommen dy't jo fergelykje wolle.
Opmerking. It ark Avansearre filter kin allinnich sykje nei oerienkomsten en ferskillen yn de deselde rige . Om alle wearden te finen dy't yn kolom A binne, mar net oeral yn kolom B binne, brûk dizze formule.
Filter rigen basearre op oerienkommende items yn in list
Stel dat jo in grutte tabel hawwe mei hûnderten of tûzenen rigen, en jo hawwe in koartere list krigen mei allinich de items dy't relevant binne op in bepaald momint. De fraach is - hoe fine jo alle yngongen yn jo tabel dy't al of net yn 'e lytsere list binne?
Filter rigen dy't oerienkomme mei items yn in list
Om alle items yn 'e boarne te finen tabel dy't ek oanwêzich binne yn in lytsere list, mei de folgjende COUNTIF-formule:
COUNTIF( list_to_match , top_data_cell)Aannommen dat de lytsere list yn it berik D2 is :D7, en de items fan 'e tabel dy't moatte wurde fergelike mei dy list binne yn kolom B begjinnend mei rige 10, de formulegiet as folget (merk asjebleaft it gebrûk fan absolute en relative referinsjes):
=COUNTIF($D$2:$D$7,B10)
Fansels binne jo net beheind ta it filterjen fan jo tabel mei gewoan ien kritearium.
Om bygelyks rigen te filterjen dy't oerienkomme mei de list, mar allinich foar de Noard-regio , fier twa kritearia yn deselde rige yn, sadat se wurkje mei de EN-logika:
- Regio:
="=North"
- Oerienkommende items:
=COUNTIF($D$2:$D$7,B10)
Sa't jo kinne sjen yn 'e skermprint hjirûnder, binne d'r mar twa records yn' e tabel dy't oerienkomme mei beide kritearia :
Opmerking. Yn dit foarbyld brûke wy de eksakte oerienkomst kritearia foar tekstwearden: ="=North "
om allinich de sellen te finen dy't krekt lyk binne oan de opjûne tekst. As jo de Regio-kritearia gewoan ynfiere as Noard (sûnder it lykweardich teken en dûbele oanhalingstekens), sil Microsoft Excel alle items fine dy't begjinne mei de opjûne tekst, bgl. Noardeast of Noardwest . Foar mear ynformaasje, sjoch asjebleaft Excel Advanced Filter foar tekstwearden.
Rijen filterje dy't net oerienkomme mei items yn in list
Om alle items yn 'e tabel te finen dy't net yn 'e lytsere list steane, kontrolearje oft it resultaat fan ús COUNTIF-formule gelyk is oan nul:
COUNTIF( list_to_match , top_data_cell) =0Om bygelyks de Noardregio items yn 'e tabel te filterjen dy't yn 'e list ferskine, brûk dan de folgjende kritearia:
- Regio:
="=North"
- Net-oerienkommende items:
=COUNTIF($D$2:$D$7,B10)=0
Opmerkingen:
- As de oerienkommende list yn in oar wurkblêd sit, wês dan wis dat jo de blêdnamme yn 'e formule opnimme, bgl.
=COUNTIF(Sheet2!$A$2:$A$7,B10)
. - As jo de resultaten ekstrahearje wolle nei in oar blêd, start dan it Avansearre filter fanút it bestimmingsblêd, lykas útlein yn Hoe kinne jo filtere rigen ekstrahearje nei in oar wurkblêd.
Filter foar wykeinen en wurkdagen
Oan no ta hawwe ús foarbylden fan it berik foar Avansearre filterkritearia it meast behannele mei numerike en tekstwearden. No, it is tiid om wat oanwizings te jaan oan dyjingen dy't op datums operearje.
De ynboude Excel-datumfilters jouwe in breed oanbod fan opsjes dy't in protte senario's dekke. In protte, mar net allegear! As jo bygelyks in list mei datums krigen hawwe en jo frege hawwe om wurkdagen en wykeinen te filterjen, hoe soene jo dat dan dwaan?
Sa't jo wierskynlik witte, biedt Microsoft Excel in spesjale WEEKDAY-funksje dy't de dei fan 'e wike oerienkomt mei in opjûne datum. En it is dizze funksje dy't wy sille brûke yn it Excel Avansearre Filter kritearia berik.
Hoe filterje wykeinen yn Excel
Hâld yn gedachten dat, yn 'e WEEKDAY termen, 1 stiet foar Snein en 6 stiet foar sneon, de formule foar it filterjen fan wykeinen giet as folget:
OF(WEEKDAY( date )=7, WEEKDAY( date )=1)Yn dit foarbyld filterje wy datums yn kolom B begjinnend mei rige 5, dus ús wykeinformule nimt de folgjende foarm oan:
=OR(WEEKDAY(B5)=7, WEEKDAY(B5)=1)