Innholdsfortegnelse
Hvis den eneste måten du kjenner til å lage et filter i Google Sheets på er standardverktøyet, har jeg en overraskelse til deg. :) Kom og utforsk FILTER-funksjonen med meg. Det er mange ferdige formler du kan låne, sammen med et nytt kraftig verktøy som kompletterer filtreringsverktøysettet enormt.
For en tid siden forklarte vi hvordan du filtrerer i Google Sheets ved å bruke standardverktøyet. Vi nevnte hvordan du filtrerer etter verdi og tilstand. Imidlertid har regneark alltid mer i seg enn vi vet. Og denne gangen skal jeg utforske Google Sheets FILTER-funksjonen sammen med deg.
Du finner den ikke i Excel, så den er absolutt verdt å sjekke ut.
Syntaks for Google Sheets FILTER-funksjonen
FILTER i Google Sheets skanner dataene dine og returnerer den nødvendige informasjonen som oppfyller kriteriene dine.
I motsetning til standard Google Sheets-filter, gjør ikke funksjonen gjøre hva som helst med de opprinnelige dataene dine. Den kopierer de funnet radene og plasserer dem uansett hvor du bygger formelen.
Syntaksen er ganske enkel siden hvert argument taler for seg selv:
=FILTER(område, betingelse1, [betingelse2, ...])- område er dataene du vil filtrere. Obligatorisk.
- betingelse1 er en kolonne eller rad sammen med TRUE/FALSE-kriteriene den skal falle inn under. Obligatorisk.
- tilstand2,... osv. står for andre kolonner/rader og/eller andre kriterier. Valgfritt.
Merk. Hver tilstand skal være av samme størrelse som området .
Merk. Hvis du bruker flere betingelser, bør de alle være enten for kolonner eller rader. Google Sheets FILTER-funksjonen tillater ikke blandede forhold.
Nå, med disse notatene i tankene, la oss se hvordan argumentene tar form av forskjellige formler.
Hvordan bruke FILTER-funksjonen i Google Regneark
Jeg skal vise dere alle eksemplene mens jeg filtrerer en liten tabell hvor jeg sporer noen ordre:
Tabellen inneholder 20 rader med ulike typer data som er perfekt for å lære funksjonen.
Hvordan filtrere i Google Sheets etter tekst
Eksempel 1. Teksten er nøyaktig
For det første vil jeg be funksjonen om å vise bare de bestillingene som er forsinket. Jeg skriver inn området for å filtrere — A1:E20 — og setter deretter betingelsen — kolonne E skal være lik Sent :
=FILTER(A1:E20,E1:E20="Late")
Eksempel 2. Tekst er akkurat ikke
Jeg kan be funksjonen om å få meg alle bestillinger unntatt de som er forsinket. For det trenger jeg en spesiell sammenligningsoperator () som betyr ikke lik :
=FILTER(A1:E20,E1:E20"Late")
Eksempel 3. Tekst inneholder
Nå vil jeg vise deg hvordan du bygger Google Sheets FILTER-funksjonen basert på delvis samsvar. Eller med andre ord — hvis tekst inneholder .
La du merke til at ordre-ID-er i kolonne A inneholder landforkortelser på slutten? La oss lage en formel bare for å hentebestillinger som ble sendt fra Canada ( CA ).
Vanligvis vil du bruke jokertegn for denne oppgaven. Men når det kommer til FILTER-formelen, er det FINN- og SØK-funksjonene som fungerer på denne måten.
Tips. Hvis du heller vil unngå å bygge andre funksjoner når du filtrerer etter enkle ordforekomster, kan du gjerne prøve tillegget som er beskrevet på slutten.
Merk. Hvis store og små bokstaver er viktige, bruk FINN, ellers velger du SØK.
SØK-funksjonen vil fungere fint for eksempelet mitt, siden store og små bokstaver i teksten er irrelevant:
=SØK(søk_etter, tekst_å_søker, [starter_ved])- søk_etter er teksten Jeg vil finne. Det er veldig viktig å pakke det inn med doble anførselstegn: "ca" . Obligatorisk.
- tekst_å_søke er området for å skanne etter den nødvendige teksten. Obligatorisk. Det er A1:A20 for meg.
- starting_at indikerer startposisjonen for søket — nummeret på tegnet som skal begynne å lete fra. Det er helt valgfritt, men jeg må bruke det. Du skjønner, alle ordre-ID-er består av bokstaver og tall, noe som betyr at et par CA kan forekomme et sted i mellom. Det identiske mønsteret for alle ID-er lar meg se etter CA fra det åttende tegnet.
Etter å ha samlet alle disse delene får jeg det ønskede resultatet:
=FILTER(A1:E20,SEARCH("ca",A1:A20,8))
Hvordan filtrere etter dato og klokkeslett i Google Sheets
Filtrering etter dato og klokkeslett krever også bruktilleggsfunksjoner. Avhengig av kriteriene dine, kan det hende du må bygge inn DAG, MÅNED, ÅR eller til og med DATO og TID i hovedfunksjonen FILTER i Google Regneark.
Tips. Hvis du ikke er kjent med disse eller alltid roter til ting med datoer - ingen grunn til bekymring. Verktøyet som er beskrevet på slutten krever ingen funksjoner i det hele tatt.
Eksempel 1. Datoen er
For å få tak i bestillingene som har forfall 9. januar 2020, inviterer jeg DATE-funksjonen:
=FILTER(A1:E20,C1:C20=DATE(2020,1,9))
Merk. Dette fungerer bare hvis cellene dine ikke inneholder tidsenheter sammen med datoen (regnearket kan legge dem til som standard). For å være sikker, bare velg en celle og sjekk hva som vises i formellinjen:
Hvis tiden er der og det ikke er mulig å fjerne den, bør du bruke enten QUERY eller en mer kompleks tilstand i Google Regnearks FILTER-funksjon, som dette:
=FILTER(A1:E20,C1:C20>=DATE(2020,1,9),C1:C20
Tips. Jeg snakker om flere forhold mer detaljert nedenfor.
Eksempel 2. Dato inneholder
Hvis du bare er interessert i en bestemt måned eller et år, kan du klare deg med funksjonene MONTH og YEAR. Sett området med datoer rett inn ( C1:C20 ) og spesifiser tallet på måneden (eller året) det skal være lik ( =1 ):
=FILTER(A1:E20,MONTH(C1:C20)=1)
Eksempel 3. Datoen er før/etter
For å få dataene som faller før eller etter den angitte datoen, trenger du DATOEN funksjon og slike sammenligningsoperatører som størreenn (>), større enn eller lik (>=), mindre enn (<), mindre enn eller lik (<=).
Her er bestillingene som ble mottatt på og etter 1. januar 2020:
=FILTER(A1:E20,D1:D20>=DATE(2020,1,1))
Du kan selvfølgelig enkelt erstatte DATO med MONTH eller YEAR her. Resultatet vil ikke avvike fra det ovenfor:
=FILTER(A1:E20,YEAR(D1:D20)>=2020)
Eksempel 4. Tid
Når du filtrerer på Google Sheets etter tid, er øvelsen nøyaktig den samme som med datoer. Du bruker tilleggsfunksjonen TID.
For for eksempel å få bare dager med et tidsstempel etter 14:00, vil formelen være:
=FILTER(A1:B10,A1:A10>TIME(14,0,0))
Men når det gjelder bruk av HOUR-funksjonen (som med MONTH for datoer), endrer spillet seg litt. Tid er vanskelig nok i regneark, så noen få justeringer er nødvendige.
For å returnere alle rader med tidsstempler mellom 14:00 og 12:00 , gjør du dette:
- Omslutt området med tidsstempler ( A1:A10 ) i en egen HOUR-funksjon. Dette vil indikere hvor du skal lete.
- Legg deretter til en annen HOUR-funksjon for å stille inn selve tiden.
=FILTER(A1:B10,HOUR(A1:A10)>=HOUR("2:00:00 PM"))
Tips . Ser du at resultatet ikke inkluderer 12:41 PM ? Det er fordi regnearket behandler det som 00:41 som er mindre enn 2:00 .
Hvis du finner en mer elegant løsning, kan du dele den i kommentarfeltet nedenfor.
Hvordan filtrere i Google Regneark ved hjelp av cellereferanser
Hver gang du oppretter et Google Regneark-filterformel, må du angi betingelsen som den er: om et ord eller dets del, datoen osv. Med mindre du er kjent med cellereferanser.
De gjør mange ting med formler enklere. For i stedet for å skrive ut alt, kan du ganske enkelt referere til celler med betingelser.
Husker du hvordan jeg så etter alle bestillinger som er for sent? Jeg kan raskt referere til E4 med teksten Sent for å gjøre det samme:
=FILTER(A1:E20,E1:E20=E4)
Resultatet vil ikke avvike i det hele tatt:
Du kan gjenta dette med alle de nevnte formlene. Unngå for eksempel å legge til flere funksjoner som DATO og bare referer til cellen med en interessedato:
=FILTER(A1:E20,C1:C20=C15)
Tips. Cellereferanser lar deg også filtrere fra et annet ark. Du må bare ta med arknavnet:
=FILTER(Orders!A1:E20,Orders!C1:C20=Orders!C15)
Google Regneark FILTER formler med flere kriterier
Selv om jeg hovedsakelig brukte én betingelse i alle filterformler for Google Regneark før, er det mer sannsynlig at du må filtrere en tabell etter noen få betingelser om gangen.
Eksempel 1. ER MELLOM logikk
For å finne alle rader som faller mellom to tall/datoer/klokkeslett, kan du velge argumenter for funksjonen vil komme til nytte — betingelse2 , betingelse3 osv. Du dupliserer bare det samme området hver gang, men med en ny betingelse.
Se, jeg Jeg kommer bare til å returnere bestillingene som koster meg mer enn $250, men mindre enn $350:
=FILTER(A1:E20,B1:B20>=250,B1:B20<350)
Eksempel 2. ELLER logikk iGoogle Sheets FILTER-funksjon
For å få alle rader som inneholder forskjellige poster i en kolonne av interesse, vil den forrige måten dessverre ikke fungere. Så hvordan kan jeg sjekke alle bestillinger som er både på vei og for sent?
Hvis jeg prøver den forrige metoden og angir hver bestillingsstatus til en separat tilstand, får jeg #N/A-feilen:
For å sette ELLER-logikken riktig i FILTER-funksjonen, bør jeg summere disse to kriteriene innenfor én betingelse:
=FILTER(A1:E20,(E1:E20="Late")+(E1:E20="On the way"))
Legg til filter i Google Regneark til flere kolonner
Det som er enda mer sannsynlig enn å bruke noen få betingelser for én kolonne, er å lage et filter i Google Regneark for flere kolonner.
Argumentene er alle de samme. Men hver nye del av formelen krever et nytt område med sine egne kriterier.
La oss prøve å få FILTER-funksjonen i Google Regneark til å returnere bestillinger som faller inn under alle følgende regler:
- De bør være verdt $200–400:
A1:E20,B1:B20>=200,B1:B20<=400
- Forfaller i januar 2020:
MONTH(C1:C20)=1
- Og er fortsatt på vei:
E1:E20="on the way"
Sett alle disse delene sammen og Google Regneark-filterformelen for flere kolonner er klar:
=FILTER(A1:E20,B1:B20>=200,B1:B20<=400,MONTH(C1:C20)=1,E1:E20="on the way")
Formelfri måte for avansert Google Regneark-filter
FILTER-funksjonen er flott og alt, men noen ganger kan det bli for mye. Å holde styr på alle argumenter, skilletegn, nestede funksjoner og annet kan være ekstremt forvirrende og tid-forbruker.
Heldigvis har vi en bedre løsning som overskrider både Google Sheets FILTER-funksjon og standardverktøyet deres – Multiple VLOOKUP Matches.
Ikke la deg undre over navnet. Den ligner på Google Sheets VLOOKUP-funksjon fordi den søker etter treff. Akkurat som FILTER-funksjonen gjør. Akkurat som jeg gjorde ovenfor.
Her er 5 hovedfordeler med verktøyet fremfor Google Sheets FILTER-funksjonen:
- Du vant trenger ikke tenke på operatører for forskjellige forhold — velg bare den fra listen:
Jeg oppfordrer deg virkelig til å installere Multiple VLOOKUP Matcher og prøv det. For å se nærmere gjennom alternativene, besøk opplæringssiden eller se en spesiell instruksjonsvideo: