Excel FILTER virka - kraftmikil síun með formúlum

  • Deildu Þessu
Michael Brown

Í þessari stuttu kennslustund muntu læra hvernig á að sía í Excel á virkan hátt með formúlum. Dæmi til að sía tvítekningar, frumur sem innihalda ákveðinn texta, með mörgum viðmiðum og fleira.

Hvernig síarðu venjulega í Excel? Að mestu leyti með því að nota sjálfvirka síu og í flóknari atburðarás með Advanced Filter. Þessar aðferðir eru hraðar og öflugar og hafa einn verulegan galla - þær uppfærast ekki sjálfkrafa þegar gögnin þín breytast, sem þýðir að þú þyrftir að hreinsa upp og sía aftur. Kynning á FILTER aðgerðinni í Excel 365 verður langþráður valkostur við hefðbundna eiginleika. Ólíkt þeim endurreikna Excel formúlur sjálfkrafa við hverja vinnublaðsbreytingu, þannig að þú þarft að setja upp síuna þína bara einu sinni!

    Excel FILTER aðgerðin

    FILTER aðgerðin í Excel er notað til að sía fjölda gagna út frá þeim forsendum sem þú tilgreinir.

    Fullið tilheyrir flokki Dynamic Arrays falla. Niðurstaðan er fylki gilda sem rennur sjálfkrafa inn í svið frumna, byrjað á reitnum þar sem þú slærð inn formúlu.

    Setjafræði FILTER fallsins er sem hér segir:

    FILTER(fylki, innihalda , [if_empty])

    Hvar:

    • Array (áskilið) - svið eða fylki gilda sem þú vilt sía.
    • Ta með (áskilið) - viðmiðin sem gefin eru upp sem Boolean fylki (TRUE og FALSE gildi).

      Þessjafnvel hundruð dálka, gætirðu örugglega viljað takmarka niðurstöðurnar við nokkra mikilvægustu.

      Dæmi 1. Sía nokkra aðliggjandi dálka

      Í þeim aðstæðum þegar þú vilt að einhverjir nálægir dálkar birtist í FILTER niðurstöðu, taktu aðeins þá dálka í fylki því það er þessi rök sem ákvarðar hvaða dálkum á að skila.

      Í grunnformúludæminu FILTER, ef þú ætlar að skila fyrstu 2 dálkunum ( Nafn og Hópur ). Þannig að þú gefur A2:B13 fyrir fylki rökin:

      =FILTER(A2:B13, B2:B13=F1, "No results")

      Sem afleiðing fáum við lista yfir þátttakendur markhópsins sem er skilgreindur í F1:

      Dæmi 2. Sía ekki aðliggjandi dálka

      Til þess að FILTER aðgerðin skili ósamliggjandi dálkum skaltu nota þetta snjalla bragð:

      1. Búið til FILTER formúlu með viðeigandi skilyrðum með því að nota alla töfluna fyrir fylki .
      2. Hreiðið ofangreinda formúlu inni í annarri FILTER aðgerð. Til að stilla "umbúðir" aðgerðina, notaðu fylkisfasta með TRUE og FALSE gildi eða 1 og 0 fyrir include rökin, þar sem TRUE (1) merkir dálkana sem á að halda og FALSE (0) merkir dálka sem á að útiloka.

      Til dæmis, til að skila aðeins Nöfnum (1. dálki) og Vinnur (3. dálkur), erum við að nota {1, 0,1} eða {TRUE,FALSE,TRUE} fyrir include röksemdin í ytri FILTER fallinu:

      =FILTER(FILTER(A2:C13, B2:B13=F1), {1,0,1})

      Eða

      =FILTER(FILTER(A2:C13, B2:B13=F1), {TRUE,FALSE,TRUE})

      Hvernig á að takmarkafjöldi lína sem skilað er af FILTER aðgerð

      Ef FILTER formúlan þín finnur töluvert margar niðurstöður, en vinnublaðið þitt hefur takmarkað pláss og þú getur ekki eytt gögnunum hér að neðan, þá geturðu takmarkað fjölda lína sem FILTER aðgerðin skilar .

      Við skulum sjá hvernig það virkar á dæmi um einfalda formúlu sem dregur leikmenn úr markhópnum í F1:

      =FILTER(A2:C13, B2:B13=F1)

      Oftangreind formúla gefur út allar færslur sem það finnur, 4 raðir í okkar tilfelli. En segjum að þú hafir bara pláss fyrir tvo. Til að birta aðeins fyrstu 2 línurnar sem fundust, þarftu að gera þetta:

      • Stingdu FILTER formúlunni í array rökin í INDEX fallinu.
      • Fyrir row_num rökin fyrir INDEX, notaðu lóðréttan fylkisfasta eins og {1;2}. Það ákvarðar hversu mörgum línum á að skila (2 í okkar tilfelli).
      • Fyrir column_num frumbreytuna, notaðu láréttan fylkisfasta eins og {1,2,3}. Það tilgreinir hvaða dálkum á að skila (fyrstu 3 dálkarnir í þessu dæmi).
      • Til að sjá um hugsanlegar villur þegar engin gögn finnast sem passa við skilyrðin þín, geturðu sett formúluna þína inn í IFERROR fallið.

    Heilsuformúlan er á þessu formi:

    =IFERROR(INDEX(FILTER(A2:C13, B2:B13=F1), {1;2}, {1,2,3}), "No result")

    Þegar unnið er með stórar töflur getur verið að skrifa fylkisfasta handvirkt frekar þunglamalegt. Ekkert mál, SEQUENCE aðgerðin getur búið til raðnúmerin fyrir þig sjálfkrafa:

    =IFERROR(INDEX(FILTER(A2:C13, B2:B13=F1), SEQUENCE(2), SEQUENCE(1, COLUMNS(A2:C13))), "No result")

    Fyrsta SEQUENCE býr til lóðrétta fylkisem inniheldur eins margar raðnúmer og tilgreint er í fyrstu (og einu) röksemdinni. Önnur RÖÐ notar COLUMNS fallið til að telja fjölda dálka í gagnasafninu og framleiðir jafngilt lárétt fylki.

    Ábending. Til að skila gögnum úr tilteknum dálkum , eru ekki allir dálkarnir, í lárétta fylkisföstunni sem þú notar fyrir dálknum_númer röksemdafærslu INDEX, með aðeins þessar tilteknu tölur. Til dæmis, til að draga gögn úr 1. og 3. dálki, notaðu {1,3}.

    Excel FILTER aðgerðin virkar ekki

    Í aðstæðum þegar Excel FILTER formúlan þín leiðir til villu, mun líklegast vera eitt af eftirfarandi:

    #CALC! villa

    Kemur fram ef valfrjálsu if_empty röksemdinni er sleppt og engar niðurstöður sem uppfylla skilyrðin finnast. Ástæðan er sú að eins og er styður Excel ekki tóm fylki. Til að koma í veg fyrir slíkar villur, vertu viss um að skilgreina alltaf if_empty gildið í formúlunum þínum.

    #VALUE villa

    Á sér stað þegar fylki og include röksemdafærslan hefur ósamhæfðar víddir.

    #N/A, #VALUE, o.s.frv.

    Mismunandi villur geta komið upp ef eitthvert gildi í include argumentinu er villa eða ekki hægt að breyta því í Boolean gildi.

    #NAME villa

    Kemst þegar reynt er að nota FILTER í eldri útgáfu af Excel. Vinsamlegast mundu að það er ný aðgerð, sem er aðeins fáanleg í Office 365 og Excel 2021.

    Ínýtt Excel, #NAME villa kemur upp ef þú stafsetur nafn aðgerðarinnar fyrir slysni.

    #SPILL villa

    Oftast kemur þessi villa ef ein eða fleiri reiti í lekasviðinu eru ekki alveg auðar . Til að laga það skaltu bara hreinsa eða eyða hólfum sem ekki eru tómar. Til að rannsaka og leysa önnur mál skaltu skoða #SPILL! villa í Excel: hvað það þýðir og hvernig á að laga það.

    #REF! villa

    Kemur fram þegar FILTER formúla er notuð á milli mismunandi vinnubóka og frumvinnubókinni er lokað.

    Þannig er hægt að skrá gögn í Excel á virkan hátt. Ég þakka þér fyrir lesturinn og vonast til að sjá þig á blogginu okkar í næstu viku!

    Sækja æfingabók

    Sía í Excel með formúlum (.xlsx skrá)

    hæð (þegar gögn eru í dálkum) eða breidd (þegar gögn eru í röðum) verður að vera jöfn fylki röksemdinni.
  • If_empty (valfrjálst) - gildið sem á að skila þegar engar færslur uppfylla skilyrðin.
  • FILTER aðgerðin er aðeins fáanleg í Excel fyrir Microsoft 365 og Excel 2021. Í Excel 2019, Excel 2016 og eldri útgáfum er það ekki stutt.

    Basic Excel SILTER formúla

    Til að byrja, skulum við ræða nokkur mjög einföld tilvik bara til að fá meiri skilning á því hvernig Excel formúla til að sía gögn virkar.

    Úr gagnasettinu hér að neðan, ef þú ætlar að taka út færslurnar með tilteknu gildi í hópnum , dálknum, segjum C hóp. Til að gera það, gefum við tjáninguna B2:B13="C" í include röksemdin, sem mun framleiða nauðsynlega Boolean fylki, með TRUE sem samsvarar "C" gildum.

    =FILTER(A2:C13, B2:B13="C", "No results")

    Í reynd er hentugra að setja viðmiðin inn í sérstakan reit, t.d. F1, og notaðu frumutilvísun í stað þess að harðkóða gildið beint í formúlunni:

    =FILTER(A2:C13, B2:B13=F1, "No results")

    Ólíkt síueiginleika Excel gerir aðgerðin engar breytingar á upprunalegu gögnunum. Það dregur út síuðu skrárnar inn í svokallað lekasvið (E4:G7 á skjámyndinni hér að neðan), og byrjar í reitnum þar sem formúlan er slegin inn:

    Ef engar skrár passa við tilgreind skilyrði, formúlan skilar gildinu sem þú setur inn í if_empty rök, "Engar niðurstöður" í þessu dæmi:

    Ef þú vilt frekar skila engu í þessu tilviki, þá gefðu upp tóman streng ("") fyrir síðustu rök:

    =FILTER(A2:C13, B2:B13=F1, "")

    Ef gögnin þín eru skipulögð lárétt frá vinstri til hægri eins og sýnt er á skjámyndinni hér að neðan, FILTER aðgerðin virkar líka vel. Gakktu úr skugga um að þú skilgreinir viðeigandi svið fyrir fylki og include rökin, þannig að upprunafylkin og Boolean fylkið hafi sömu breidd:

    =FILTER(B2:M4, B3:M3= B7, "No results")

    Excel FILTER virka - notkunarskýrslur

    Til að sía á áhrifaríkan hátt í Excel með formúlum eru hér nokkrir mikilvægir punktar til að taka eftir:

    • SÍA aðgerðin hellir niður niðurstöðunum sjálfkrafa lóðrétt eða lárétt á vinnublaðinu, allt eftir því hvernig upprunalegu gögnin þín eru skipulögð. Svo, vinsamlegast vertu viss um að þú hafir alltaf nóg af tómum hólfum niður og til hægri, annars færðu #SPILL villa.
    • Niðurstöður Excel FILTER fallsins eru kraftmiklar, sem þýðir að þær uppfærast sjálfkrafa þegar gildi í breyting á upprunalegu gagnasafni. Hins vegar er bilið sem gefið er upp fyrir fylkis frumbreytuna ekki uppfært þegar nýjum færslum er bætt við upprunagögnin. Ef þú vilt að fylkingin breyti stærð sjálfkrafa skaltu breyta henni í Excel töflu og búa til formúlur með skipulögðum tilvísunum, eða búa til kraftmikið nafnsvið.

    Hvernig á að sía í Excel -formúludæmi

    Nú þegar þú veist hvernig grunn Excel síuformúla virkar er kominn tími til að fá smá innsýn í hvernig hægt væri að útvíkka hana til að leysa flóknari verkefni.

    Sía með mörgum viðmiðum (OG rökfræði)

    Til að sía gögn með mörgum forsendum gefur þú upp tvær eða fleiri rökfræðilegar tjáningar fyrir include röksemdin:

    FILTER(fylki, ( svið1= viðmið1) * ( svið2= viðmið2), "Engar niðurstöður")

    Margföldunaraðgerðin vinnur fylkin með AND rökfræðinni , sem tryggir að aðeins þær færslur sem uppfylla öll skilyrði séu skilað. Tæknilega virkar þetta svona:

    Niðurstaða hverrar rökfræðilegrar tjáningar er fylki Boolean-gilda, þar sem TRUE jafngildir 1 og FALSE er 0. Síðan eru þættir allra fylkanna í sömu stöðu margfaldaðir. . Þar sem margföldun með núll gefur alltaf núll, þá komast aðeins þau atriði sem öll viðmiðin eru SÖNN fyrir í fylkinu sem myndast og þar af leiðandi eru aðeins þessi atriði tekin út.

    Dæmin hér að neðan sýna þessa almennu formúlu í virkni.

    Dæmi 1. Sía marga dálka í Excel

    Við skulum víkka út grunnformúluna okkar í Excel FILTER aðeins lengra, við skulum sía gögnin eftir tveimur dálkum: Group (dálkur B) og Vinnur (dálkur C).

    Til þess setjum við upp eftirfarandi skilyrði: sláðu inn nafn markhópsins í F2 ( viðmið1 ) og lágmarksfjöldavinnur í F3 ( viðmið2 ).

    Í ljósi þess að upprunagögn okkar eru í A2:C13 ( fylki ), eru hópar í B2:B13 ( svið1 ) og sigrar eru í C2:C13 ( svið2 ), formúlan er á þessa leið:

    =FILTER(A2:C13, (B2:B13=F2) * (C2:C13>=F3), "No results")

    Sem afleiðing færðu lista yfir leikmenn í A-riðli sem hafa tryggt sér 2 eða fleiri sigra:

    Dæmi 2. Sía gögn á milli dagsetninga

    Í fyrsta lagi skal tekið fram að það er ekki hægt til að búa til almenna formúlu til að sía eftir dagsetningu í Excel. Við mismunandi aðstæður þarftu að búa til viðmið á annan hátt, eftir því hvort þú vilt sía eftir tiltekinni dagsetningu, eftir mánuði eða eftir ári. Tilgangurinn með þessu dæmi er að sýna fram á almenna nálgun.

    Við sýnishornsgögnin okkar bætum við einum dálki í viðbót sem inniheldur dagsetningar síðasta vinnings (dálkur D). Og nú munum við draga út vinningana sem áttu sér stað á tilteknu tímabili, td á milli 17. maí og 31. maí.

    Vinsamlegast athugið að í þessu tilviki eiga bæði viðmiðin við sama svið:

    =FILTER(A2:D13, (D2:D13>=G2) * (D2:D13<=G3), "No results")

    Þar sem G2 og G3 eru dagsetningar til að sía á milli.

    Sía með mörgum skilyrðum (OR rökfræði)

    Til að draga út gögn byggt á mörgum OR-skilyrðum, notarðu líka rökrænar tjáningar eins og sýndar eru í fyrri dæmunum, en í stað þess að margfalda, leggurðu þær saman. Þegar Boolean fylkin sem segin skila eru lögð saman, mun fylkið sem myndast hafa 0 fyrir færslur sem uppfylla ekki nein skilyrði (þ.e.a.s. öllviðmið eru FALSE), og slíkar færslur verða síaðar út. Færslur þar sem að minnsta kosti ein viðmiðun er TRUE verða tekin út.

    Hér er almenna formúlan til að sía dálka með OR rökfræðinni:

    FILTER(fylki, ( svið1= viðmið1) + ( svið2= viðmið2), "Engar niðurstöður")

    Sem dæmi skulum við draga út lista yfir leikmenn sem hafa þetta eða þessi fjöldi vinninga.

    Að því gefnu að upprunagögnin séu í A2:C13, vinningar séu í C2:C13 og vinningstölurnar í F2 og F3, myndi formúlan vera sem hér segir:

    =FILTER(A2:C13, (C2:C13=F2) + (C2:C13=F3), "No results")

    Sem afleiðing, þú veist hvaða leikmenn hafa unnið alla leikina (4) og hverjir hafa ekki unnið neinn (0):

    Sía byggt á mörgum OG sem og OR viðmiðum

    Þegar þú þarft að nota báðar viðmiðunargerðir skaltu muna þessa einföldu reglu: sameina OG viðmiðin með stjörnu (*) og OR viðmiðin með plúsnum merki (+).

    Til dæmis, til að skila lista yfir leikmenn sem hafa tiltekinn fjölda vinninga (F2) OG tilheyra hópnum sem nefndur er í annað hvort E2 EÐA E3 skaltu byggja eftirfarandi keðju af rökréttum tjáning:

    =FILTER(A2:C13, (C2:C13=F2) * ((B2:B13=E2) + (B2:B13=E3)), "No results")

    Og þú munt fá eftirfarandi niðurstöðu:

    Hvernig á að sía afrit í Excel

    Þegar unnið er með risastór vinnublöð eða sameinað gögn frá mismunandi aðilum er oft möguleiki á að sumar afrit laumast inn.

    Ef þú ert að leita að sía út tvítekningar og útdráttureinstök atriði, notaðu síðan UNIQUE aðgerðina eins og útskýrt er í ofangreindu tengdu kennsluefni.

    Ef markmið þitt er að sía tvítekningar , þ. ásamt COUNTIFS.

    Hugmyndin er að fá fjölda tilvika fyrir allar skrárnar og draga út þær sem eru stærri en 1. Til að fá talninguna gefur þú upp sama svið fyrir hvert viðmiðunarsvið / viðmið par af COUNTIFS eins og þetta:

    FILTER( fylki, COUNTIFS( dálkur1, dálkur1, dálkur2, dálkur2)>1, "Engar niðurstöður")

    Til dæmis, til að sía tvíteknar línur úr gögnum í A2:C20 byggt á gildunum í öllum 3 dálkunum, hér er formúlan til að nota:

    =FILTER(A2:C20, COUNTIFS(A2:A20, A2:A20, B2:B20, B2:B20, C2:C20, C2:C20)>1, "No results")

    Ábending. Til að sía tvítekningar út frá gildunum í lykladálkunum skaltu aðeins taka þá tilteknu dálka með í COUNTIFS fallinu.

    Hvernig á að sía út eyðurnar í Excel

    Formúla til að sía út auðar reiti er í raun afbrigði af Excel FILTER formúlunni með mörgum OG viðmiðum. Í þessu tilviki athugum við hvort allir (eða tilteknir) dálkar hafi einhver gögn í þeim og útilokum línurnar þar sem að minnsta kosti einn reit er tómur. Til að auðkenna reiti sem ekki eru auðar, notarðu „ekki jafnt og“ () ásamt tómum streng ("") eins og þetta:

    FILTER(fylki, ( dálkur1 "") * ( dálkur2 =""), "Engar niðurstöður")

    Með upprunagögnum í A2:C12, til að sía út línursem inniheldur eina eða fleiri auða reiti er eftirfarandi formúla slegin inn í E3:

    Sía reiti sem innihalda ákveðinn texta

    Til að draga út reiti sem innihalda ákveðinn texta, getur notað FILTER aðgerðina ásamt klassísku Ef reiturinn inniheldur formúlu:

    FILTER(fylki, ISNUMBER(SEARCH(" texti ", svið )), "Engar niðurstöður")

    Svona virkar það:

    • SEARCH fallið leitar að tilteknum textastreng á tilteknu sviði og skilar annað hvort tölu (staða fyrsta stafs) eða #VALUE! villa (texti fannst ekki).
    • ISNUMBER fallið breytir öllum tölum í TRUE og villur í FALSE og sendir Boolean fylkið sem myndast í include rökin í FILTER fallinu.

    Fyrir þetta dæmi höfum við bætt við Eftirnöfnum leikmanna í B2:B13, slegið inn hluta nafnsins sem við viljum finna í G2 og síðan notað eftirfarandi formúlu til að sía gögnin:

    =FILTER(A2:D13, ISNUMBER(SEARCH(G2, B2:B13)), "No results")

    Sem afleiðingin sækir formúlan tvö eftirnöfn sem innihalda "han":

    Sía og reikna út (Summa, meðaltal, lágmark, hámark osfrv.)

    Skolegur hlutur við Excel FILTER aðgerðina er að hún getur ekki aðeins dregið út gildi með skilyrðum, heldur einnig tekið saman síuð gögn. Til þess skaltu sameina FILTER með samansafnunaraðgerðum eins og SUM, AVERAGE, COUNT, MAX eða MIN.

    Til dæmis, til að safna saman gögnum fyrir ákveðinn hóp í F1, notaðu eftirfarandiformúlur:

    Heildarvinningar:

    =SUM(FILTER(C2:C13, B2:B13=F1, 0))

    Meðalvinningar:

    =AVERAGE(FILTER(C2:C13, B2:B13=F1, 0))

    Hámarksvinningar:

    =MAX(FILTER(C2:C13, B2:B13=F1, 0))

    Lágmarksvinningar:

    =MIN(FILTER(C2:C13, B2:B13=F1, 0))

    Vinsamlegast athugaðu að í öllum formúlunum notum við núll fyrir if_empty rökin, þannig að formúlurnar myndu skilaðu 0 ef engin gildi sem uppfylla skilyrðin finnast. Ef þú gefur upp hvaða texta sem er eins og „Engar niðurstöður“ myndi það leiða til #VALUE villu, sem er augljóslega það síðasta sem þú vilt :)

    Hástafir og hástöfum síuformúlu

    Staðlað Excel FILTER formúla er hástafa-ónæmi, sem þýðir að hún gerir engan greinarmun á lágstöfum og hástöfum. Til að greina stóra og stóra texta skaltu hreiðra EXACT fallið í include röksemdinni. Þetta mun neyða FILTER til að gera rökrétt próf með hástöfumnæmum hætti:

    FILTER(fylki, EXACT( svið , viðmið ), "Engar niðurstöður")

    Svo sem , þú ert með báða hópana A og a og vilt draga út færslur þar sem hópurinn er lágstafur "a". Til að gera það skaltu nota eftirfarandi formúlu, þar sem A2:C13 eru upprunagögnin og B2:B13 eru hópar til að sía:

    =FILTER(A2:C13, EXACT(B2:B13, "a"), "No results")

    Eins og venjulega geturðu sett inn markhópinn í fyrirfram skilgreindan reit, segðu F1, og notaðu þá reittilvísun í stað harðkóðaðan texta:

    =FILTER(A2:C13, EXACT(B2:B13, F1), "No results")

    Hvernig á að SÍA gögn og skila aðeins tilteknum dálkum

    Að mestu leyti er það sem Excel notendur vilja að sía alla dálka með einni formúlu. En ef upprunataflan þín inniheldur tugi eða

    Michael Brown er hollur tækniáhugamaður með ástríðu fyrir því að einfalda flókna ferla með hugbúnaðarverkfærum. Með meira en áratug af reynslu í tækniiðnaðinum hefur hann aukið færni sína í Microsoft Excel og Outlook, sem og Google Sheets og Docs. Blogg Michael er tileinkað því að deila þekkingu sinni og sérfræðiþekkingu með öðrum, veita auðveld ráð og leiðbeiningar til að bæta framleiðni og skilvirkni. Hvort sem þú ert vanur fagmaður eða byrjandi, þá býður blogg Michaels upp á dýrmæta innsýn og hagnýt ráð til að fá sem mest út úr þessum nauðsynlegu hugbúnaðarverkfærum.