Kuidas kasutada Google Sheetsi FILTER funktsiooni

  • Jaga Seda
Michael Brown

Kui ainus viis, kuidas te teate Google Sheetsis filtrit luua, on standardne tööriist, siis on mul teile üllatus :) Tulge koos minuga uurima funktsiooni FILTER. Seal on palju valmisvalemeid, mida saate laenata, koos uue võimsa tööriistaga, mis täiendab filtreerimise tööriistakomplekti tohutult.

Mõni aeg tagasi seletasime, kuidas Google Sheetsis standardtööriista abil filtreerida. Mainisime, kuidas filtreerida väärtuse ja tingimuse järgi. Kuid tabelites on alati rohkem, kui me teame. Ja seekord uurin koos teiega Google Sheetsi FILTER funktsiooni.

Excelist seda ei leia, seega tasub seda kindlasti kontrollida.

    Google Sheets FILTER funktsiooni süntaks

    Google Sheetsi FILTER skaneerib teie andmed ja tagastab nõutud teabe, mis vastab teie kriteeriumidele.

    Erinevalt tavapärasest Google Sheetsi filtrist ei tee funktsioon teie algsete andmetega midagi. See kopeerib leitud read ja paigutab need sinna, kuhu te moodustate valemi.

    Süntaks on üsna lihtne, kuna iga argument räägib enda eest:

    =FILTER(range, condition1, [condition2, ...])
    • vahemik on andmed, mida soovite filtreerida. Nõutav.
    • tingimus1 on veerg või rida koos TRUE/FALSE kriteeriumidega, mille alla see peaks kuuluma. Nõutav.
    • condition2,... , jne, tähistavad teisi veerge/ridu ja/või muid kriteeriume. Vabatahtlik.

    Märkus. tingimus peaks olema sama suur kui vahemik .

    Märkus. Kui kasutate mitut tingimust, peaksid need kõik olema kas veergude või ridade jaoks. Google Sheetsi funktsioon FILTER ei luba segatingimusi.

    Nüüd, neid märkusi silmas pidades, vaatame, kuidas võtavad erinevate valemite argumendid kuju.

    Kuidas kasutada funktsiooni FILTER Google Sheets'is

    Näitan teile kõiki näiteid, filtreerides samal ajal väikest tabelit, kus ma jälgin mõningaid tellimusi:

    Tabelis on 20 rida eri tüüpi andmetega, mis sobib ideaalselt funktsiooni õppimiseks.

    Kuidas filtreerida Google Sheetsis teksti järgi

    Näide 1. Tekst on täpselt

    Kõigepealt palun funktsioonil näidata ainult neid tellimusi, mis on hilinenud. Ma sisestan filtreerimiseks vahemiku - A1:E20 - ja seejärel määrata tingimus - veerg E peaks olema võrdne Hiline :

    =FILTER(A1:E20,E1:E20="Late")

    Näide 2. Tekst on täpselt mitte

    Ma võin paluda funktsioonil saada mulle kõik tellimused, välja arvatud need, mis on hilinenud. Selleks vajan ma spetsiaalset võrdlusoperaatorit (), mis tähendab, et ei ole võrdne :

    =FILTER(A1:E20,E1:E20"Late")

    Näide 3. Tekst sisaldab

    Nüüd tahaksin teile näidata, kuidas ehitada Google Sheets FILTER funktsiooni osalise vaste alusel. Või teisisõnu - kui tekst sisaldab .

    Kas märkasite, et veerus A olevad tellimuse ID-d sisaldavad lõpus riigi lühendeid? Koostame valemi, et leida ainult Kanadast saadetud tellimused ( CA ).

    Tavaliselt kasutaksite selle ülesande täitmiseks jokker-märke. Kuid kui tegemist on FILTER-vormeliga, siis töötavad sel viisil FIND- ja SEARCH-funktsioonid.

    Vihje. Kui soovite lihtsate sõnade esinemise järgi filtreerimisel vältida teiste funktsioonide pesitsemist, võite julgelt proovida lõpus kirjeldatud lisatüüpi.

    Märkus. Kui teksti puhul on oluline, kasutage FIND, vastasel juhul valige SEARCH.

    Funktsioon SEARCH sobib minu näite jaoks suurepäraselt, kuna teksti puhul ei ole see oluline:

    =SEARCH(search_for, text_to_search, [starting_at])
    • search_for on tekst, mida ma tahan leida. On väga oluline, et see ümbritsetakse topeltlausega: "ca" . nõutav.
    • text_to_search on vahemik, mida skaneerida vajaliku teksti leidmiseks. Nõutav. See on A1:A20 minu jaoks.
    • starting_at näitab otsingu alguspositsiooni - selle tähemärgi numbrit, millest otsingut alustada. See on täiesti vabatahtlik, kuid mul on vaja seda kasutada. Näete, kõik tellimuse ID-d koosnevad tähtedest ja numbritest, mis tähendab, et paari CA võib esineda kusagil vahepeal. Kõikide ID-de identne muster võimaldab mul otsida CA alates 8. tähemärgist.

    Pärast kõigi nende osade kokku kogumist saan soovitud tulemuse:

    =FILTER(A1:E20,SEARCH("ca",A1:A20,8))

    Kuidas filtreerida kuupäeva ja kellaaja järgi Google Sheetsis

    Filtreerimine kuupäeva ja kellaaja järgi nõuab ka lisafunktsioonide kasutamist. Sõltuvalt teie kriteeriumidest võib olla vaja lisada Google Sheetsi põhifunktsiooni FILTER DAY, MONTH, YEAR või isegi DATE and TIME.

    Vihje. Kui sa ei ole nendega tuttav või ajad alati kuupäevadega asju segi - ei mingit muret. Lõpus kirjeldatud tööriist ei nõua üldse mingeid funktsioone.

    Näide 1. Kuupäev on

    Selleks, et saada kätte need tellimused, mis peavad laekuma 9. jaanuaril 2020, kutsun ma funktsiooni DATE:

    =FILTER(A1:E20,C1:C20=DATE(2020,1,9))

    Märkus. See töötab ainult siis, kui teie lahtrid ei sisalda ajaühikuid koos kuupäevaga (teie arvutustabel võib neid vaikimisi lisada). Et veenduda, valige lihtsalt lahter ja kontrollige, mis kuvatakse valemiribal:

    Kui aeg on olemas ja selle eemaldamine ei ole võimalik, peaksite kasutama kas QUERY või keerulisemat tingimust oma Google Sheets FILTER funktsioonis, nagu see:

    =FILTER(A1:E20,C1:C20>=DATE(2020,1,9),C1:C20

    Vihje. Ma räägin allpool üksikasjalikumalt mitmest tingimusest.

    Näide 2. Kuupäev sisaldab

    Kui teid huvitab ainult konkreetne kuu või aasta, saate hakkama funktsioonide MONTH ja YEAR abil. Pange vahemik koos kuupäevadega otse sisse ( C1:C20 ) ja määrata kuu (või aasta) number, millega see peaks olema võrdne ( =1 ):

    =FILTER(A1:E20,MONTH(C1:C20)=1)

    Näide 3. Kuupäev on enne/pärast

    Et saada andmeid, mis jäävad enne või pärast määratud kuupäeva, on vaja funktsiooni DATE ja selliseid võrdlusoperaatoreid nagu suurem kui (>), suurem kui või võrdne (>=), väiksem kui (<), väiksem kui või võrdne (<=).

    Siin on esitatud tellimused, mis laekusid 1. jaanuaril 2020 ja pärast seda:

    =FILTER(A1:E20,D1:D20>=DATE(2020,1,1))

    Loomulikult võite siinkohal hõlpsasti asendada DATE kuu või aastaga. Tulemus ei erine ülaltoodud tulemusest:

    =FILTER(A1:E20,YEAR(D1:D20)>=2020)

    Näide 4. Aeg

    Kui filtreerite Google Sheetsis aja järgi, on harjutus täpselt sama, mis kuupäevade puhul. Kasutate täiendavat funktsiooni TIME.

    Näiteks, et saada ainult päevad, mille ajatempel on pärast kella 14:00, on valem järgmine:

    =FILTER(A1:B10,A1:A10>TIME(14,0,0))

    Kui aga tuleb kasutada funktsiooni HOUR (nagu kuupäevade puhul MONTH), muutub mäng veidi. Aeg on tabelites piisavalt keeruline, seega on vaja teha mõned kohandused.

    Tagastada kõik read, mille ajatemplid on vahemikus 14:00 ja 12:00 PM teha seda:

    1. Sisestage vahemik ajatemplitega ( A1:A10 ) eraldi funktsioonis HOUR. See näitab, kust otsida.
    2. Seejärel lisage veel üks HOUR funktsioon, et määrata kellaaeg ise.

    =FILTER(A1:B10,HOUR(A1:A10)>=HOUR("2:00:00 PM"))

    Vihje. Vaata, et tulemus ei sisalda 12:41 PM ? See on sellepärast, et arvutustabel käsitleb seda kui 00:41 mis on väiksem kui 2:00 .

    Kui leiate elegantsema lahenduse, palun jagage seda allpool olevates kommentaarides.

    Kuidas filtreerida Google Sheetsis, kasutades lahtriviiteid

    Iga kord, kui loote Google Sheetsi filtrivalemi, peate sisestama tingimuse sellisena, nagu see on: kas sõna või selle osa, kuupäev jne, kui te ei ole tuttav lahtriviidetega.

    Need muudavad palju asju valemite kohta lihtsamaks. Sest selle asemel, et kõik välja kirjutada, saab lihtsalt viidata lahtritele tingimustega.

    Mäletate, kuidas ma otsisin kõik tellimused, mis on hilinenud? Ma võin kiiresti viidata E4 tekstiga Hiline teha sama:

    =FILTER(A1:E20,E1:E20=E4)

    Tulemus ei erine üldse:

    Seda saate korrata kõigi eespool nimetatud valemitega. Näiteks vältige rohkemate funktsioonide, nagu DATE, lisamist ja viitake lihtsalt lahtrisse, kus on huvipakkuv kuupäev:

    =FILTER(A1:E20,C1:C20=C15)

    Vihje. Lahtriviited võimaldavad filtreerida ka teisest lehest. Peate lihtsalt tooma lehe nime:

    =FILTER(Tellimused!A1:E20,Tellimused!C1:C20=Tellimused!C15)

    Google Sheets FILTER valemid mitme kriteeriumiga

    Kuigi ma kasutasin varem peamiselt ühte tingimust kõigis Google Sheetsi filtreerimisvalemites, on tõenäolisem, et teil on vaja filtreerida tabelit mitme tingimuse järgi korraga.

    Näide 1. IS BETWEEN loogika

    Et leida kõik kahe numbri/kuupäeva/kellaaja vahele jäävad read, tulevad kasuks funktsiooni valikulised argumendid - tingimus2 , tingimus3 jne. Te lihtsalt dubleerite sama vahemikku iga kord, kuid uue tingimusega.

    Vaata, ma tagastan ainult need tellimused, mis maksavad mulle üle 250 dollari, kuid alla 350 dollari:

    =FILTER(A1:E20,B1:B20>=250,B1:B20<350)

    Näide 2. OR-loogika Google Sheetsi funktsioonis FILTER

    Kahjuks, et saada kõik read, mis sisaldavad erinevaid kirjeid huvipakkuvas veerus, eelmine viis ei sobi. Kuidas ma saan siis kontrollida kõiki tellimusi, mis on nii teel kui ka hilinenud?

    Kui ma proovin eelmist meetodit ja sisestan iga tellimuse staatuse eraldi tingimuseks, saan #N/A vea:

    Seega, et õigesti seada VÕI-loogika funktsioonis FILTER, peaksin need kaks kriteeriumi ühes tingimuses kokku võtma:

    =FILTER(A1:E20,(E1:E20="Hilinenud")+(E1:E20="Teel"))

    Filtri lisamine Google Sheets'ile mitmele veerule

    Veelgi tõenäolisem kui mõne tingimuse rakendamine ühele veerule on filtri loomine Google Sheetsis mitme veeru jaoks.

    Argumendid on kõik samad. Kuid iga uus osa valemist nõuab uut vahemikku, millel on oma kriteeriumid.

    Proovime panna Google Sheetsi funktsiooni FILTER tagastama tellimusi, mis kuuluvad kõigi järgmiste reeglite alla:

    1. Need peaksid olema 200-400 dollari väärtuses:

      A1:E20,B1:B20>=200,B1:B20<=400

    2. on ette nähtud 2020. aasta jaanuaris:

      KUU(C1:C20)=1

    3. Ja on ikka veel teel:

      E1:E20="teel"

    Pange kõik need osad kokku ja teie Google Sheetsi mitme veeru filtri valem on valmis:

    =FILTER(A1:E20,B1:B20>=200,B1:B20<=400,MONTH(C1:C20)=1,E1:E20="on the way")

    Valemivaba viis täiustatud Google Sheetsi filtri jaoks

    FILTER funktsioon on tore ja kõik, kuid mõnikord võib see olla liiga palju. Kõikide argumentide, eraldusmärkide, sisseehitatud funktsioonide ja muu sellise jälgimine võib olla äärmiselt segane ja aeganõudev.

    Õnneks on meil parem lahendus, mis ületab nii Google Sheetsi FILTER-funktsiooni kui ka nende standardse tööriista - Multiple VLOOKUP Matches.

    Ärge laske end selle nimest segadusse ajada. See sarnaneb Google Sheets VLOOKUP funktsiooniga, sest see otsib vasteid. Nii nagu funktsioon FILTER teeb. Nii nagu ma eespool tegin.

    Siin on 5 peamist eelist tööriista üle Google Sheetsi funktsiooni FILTER:

    1. Sa ei pea mõtlema operaatorid erinevate tingimuste jaoks - vali lihtsalt üks nimekirjast:

  • Sisestage kuupäevad ja kellaaeg nagu alati tabelites - ei mingeid erifunktsioone:
  • Luua ja kustutada mitu tingimust . mitu veergu tõeliselt kiiresti :
  • Tulemuse eelvaade ja kohandage tingimusi (kui vaja), enne kui kleebite kõik oma lehele:
  • Saada tulemus väärtustena või kui valmis valem .
  • Ma tõesti julgustan teid installima Multiple VLOOKUP Matches ja proovima. Et vaadata selle võimalusi lähemalt, külastage selle õpetuslehte või vaadake spetsiaalset õppevideot:

    Michael Brown on pühendunud tehnoloogia entusiast, kelle kirg on tarkvaratööriistade abil keerukate protsesside lihtsustamine. Rohkem kui kümneaastase kogemusega tehnoloogiatööstuses on ta lihvinud oma oskusi Microsoft Excelis ja Outlookis, samuti Google Sheetsis ja Docsis. Michaeli ajaveebi eesmärk on jagada oma teadmisi ja teadmisi teistega, pakkudes hõlpsasti järgitavaid näpunäiteid ja õpetusi tootlikkuse ja tõhususe parandamiseks. Olenemata sellest, kas olete kogenud professionaal või algaja, pakub Michaeli ajaveebi väärtuslikke teadmisi ja praktilisi nõuandeid nende oluliste tarkvaratööriistade maksimaalseks kasutamiseks.