Kaip naudoti "Google Sheets" funkciją FILTER

  • Pasidalinti
Michael Brown

Jei vienintelis jums žinomas būdas sukurti filtrą "Google" lentelėse yra standartinis įrankis, turiu jums staigmeną :) Kartu su manimi patyrinėkite funkciją FILTER. Yra daugybė paruoštų formulių, kurias galite pasiskolinti, ir naujas galingas įrankis, kuris labai papildo filtravimo įrankių rinkinį.

Prieš kurį laiką paaiškinome, kaip filtruoti "Google Sheets" naudojant standartinį įrankį. Minėjome, kaip filtruoti pagal reikšmę ir pagal sąlygą. Tačiau skaičiuoklės visada turi daugiau, nei žinome. Šį kartą kartu su jumis panagrinėsiu "Google Sheets" funkciją FILTER.

To nerasite "Excel" programoje, todėl ją tikrai verta patikrinti.

    "Google Sheets" funkcijos FILTER sintaksė

    "Google Sheets" filtras nuskaito duomenis ir grąžina reikiamą informaciją, atitinkančią jūsų kriterijus.

    Skirtingai nuo standartinio "Google Sheets" filtro, ši funkcija nieko nedaro su pradiniais duomenimis. Ji nukopijuoja rastas eilutes ir perkelia jas ten, kur sukuriate formulę.

    Sintaksė gana paprasta, nes kiekvienas argumentas kalba pats už save:

    =FILTRAS(diapazonas, sąlyga1, [sąlyga2, ...])
    • diapazonas yra duomenys, kuriuos norite filtruoti. Reikalinga.
    • sąlyga1 yra stulpelis arba eilutė ir kriterijai TRUE/FALSE, pagal kuriuos ji turėtų būti vertinama. Reikalaujama.
    • condition2,... , ir t. t., reiškia kitus stulpelius / eilutes ir (arba) kitus kriterijus. Neprivaloma.

    Pastaba. Kiekvienas būklė turėtų būti tokio paties dydžio kaip diapazonas .

    Pastaba. Jei naudojate kelias sąlygas, jos visos turi būti skirtos stulpeliams arba eilutėms. "Google Sheets" funkcija FILTER neleidžia naudoti mišrių sąlygų.

    Dabar, atsižvelgdami į šias pastabas, pažiūrėkime, kaip formuojasi skirtingų formulių argumentai.

    Kaip naudoti funkciją FILTER "Google Sheets

    Parodysiu jums visus pavyzdžius, filtruodamas nedidelę lentelę, kurioje stebiu kai kuriuos užsakymus:

    Lentelėje yra 20 eilučių su įvairių tipų duomenimis, kurie puikiai tinka funkcijai išmokti.

    Kaip "Google" lentelėse filtruoti pagal tekstą

    1 pavyzdys. Tekstas yra lygiai toks

    Pirmiausia paprašysiu, kad funkcija parodytų tik tuos užsakymus, kurie vėluoja. Įvedu filtravimo diapazoną - A1:E20 - ir nustatykite sąlygą - stulpelis E turėtų būti lygus Vėlyvasis :

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

    2 pavyzdys. Tekstas yra tiksliai ne

    Galiu paprašyti, kad funkcija gautų visus užsakymus, išskyrus tuos, kurie vėluoja. Tam man reikės specialaus palyginimo operatoriaus (), kuris reiškia nelygus :

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

    3 pavyzdys. Tekste yra

    Dabar norėčiau parodyti, kaip sukurti "Google Sheets" FILTER funkciją pagal dalinį atitikimą. Kitaip tariant, jei tekste yra .

    Ar pastebėjote, kad A stulpelio užsakymo ID pabaigoje yra šalies santrumpos? Sukurkime formulę, kad gautume tik tuos užsakymus, kurie buvo išsiųsti iš Kanados ( CA ).

    Įprastai šiai užduočiai atlikti naudotumėte pakaitinius simbolius. Tačiau kai kalbama apie FILTER formulę, taip veikia FIND ir SEARCH funkcijos.

    Patarimas. Jei norite išvengti kitų funkcijų įterpimo filtruojant pagal paprastus žodžių pasikartojimus, galite išbandyti pabaigoje aprašytą priedą.

    Pastaba. Jei teksto raidė yra svarbi, naudokite FIND, kitu atveju pasirinkite SEARCH.

    Mano pavyzdyje puikiai tinka funkcija IEŠKOTI, nes teksto raidė nesvarbi:

    =SEARCH(search_for, text_to_search, [starting_at])
    • search_for yra tekstas, kurį noriu rasti. Labai svarbu jį apvesti dvigubomis kabutėmis: "ca" ... Reikalinga.
    • text_to_search yra diapazonas, kuriame reikia ieškoti reikiamo teksto. Reikalaujama. A1:A20 man.
    • starting_at nurodo pradinę paieškos poziciją - simbolio numerį, nuo kurio reikia pradėti paiešką. Tai visiškai neprivaloma, bet man reikia jį naudoti. Matote, visi užsakymo ID susideda iš raidžių ir skaičių, t. y. pora CA gali pasitaikyti kažkur tarp jų. Dėl identiško visų ID modelio galiu ieškoti CA pradedant nuo 8-ojo simbolio.

    Surinkęs visas šias dalis, gaunu norimą rezultatą:

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

    Kaip "Google" lentelėse filtruoti pagal datą ir laiką

    Filtruojant pagal datą ir laiką taip pat reikia naudoti papildomas funkcijas. Priklausomai nuo kriterijų, gali tekti pagrindinėje "Google" lentelių FILTRAVIMO funkcijoje įterpti DIENĄ, MĖNESĮ, METUS ar net DATĄ ir LAIKĄ.

    Patarimas. Jei su jomis nesate susipažinę arba visada painiojate datas - nesijaudinkite. Pabaigoje aprašytam įrankiui nereikia jokių funkcijų.

    1 pavyzdys. Data yra

    Kad gautumėte tuos užsakymus, kurie turi būti pateikti 2020 m. sausio 9 d., pakviesiu funkciją DATA:

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

    Pastaba. Tai veikia tik tuo atveju, jei jūsų ląstelėse kartu su data nepateikiami laiko vienetai (skaičiuoklėje jie gali būti pridėti pagal numatytuosius nustatymus). Norėdami įsitikinti, tiesiog pasirinkite ląstelę ir patikrinkite, kas rodoma formulių juostoje:

    Jei laikas yra ir jo pašalinti neįmanoma, turėtumėte naudoti QUERY arba sudėtingesnę "Google Sheets" FILTER funkcijos sąlygą, pvz., šią:

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

    Patarimas. Toliau išsamiau kalbėsiu apie kelias sąlygas.

    2 pavyzdys. Datą sudaro

    Jei jus domina tik konkretus mėnuo ar metai, galite išsiversti su MĖNESIO ir METŲ funkcijomis. Įveskite intervalą su datomis tiesiai į ją ( C1:C20 ) ir nurodykite mėnesio (arba metų) numerį, kuriam jis turėtų būti lygus ( =1 ):

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

    3 pavyzdys. Data yra prieš ir po

    Norint gauti duomenis, kurie patenka prieš arba po nurodytos datos, reikia funkcijos DATA ir tokių palyginimo operatorių, kaip didesnis nei (>), didesnis arba lygus (>=), mažesnis nei (<), mažesnis arba lygus (<=).

    Čia pateikiami užsakymai, gauti 2020 m. sausio 1 d. ir vėliau:

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

    Žinoma, čia galite lengvai pakeisti DATE į MONTH arba YEAR. Rezultatas nesiskirs nuo pirmiau pateikto:

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

    4 pavyzdys. Laikas

    Filtruojant "Google Sheets" pagal laiką, veiksmai yra lygiai tokie patys kaip ir su datomis. Naudojama papildoma funkcija TIME.

    Pavyzdžiui, jei norite gauti tik tas dienas, kurių laiko žyma yra po 14:00, formulė bus tokia:

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

    Tačiau kai reikia naudoti funkciją HOUR (kaip ir MONTH datoms), žaidimas šiek tiek pasikeičia. Laikas skaičiuoklėse yra pakankamai sudėtingas, todėl reikia atlikti keletą pakeitimų.

    Jei norite grąžinti visas eilutes, kurių laiko žymos yra tarp 14:00 VAL. ir 12:00 VAL. , atlikite tai:

    1. Apibrėžkite intervalą laiko žymomis ( A1:A10 ) atskiroje HOUR funkcijoje. Tai parodys, kur ieškoti.
    2. Tada pridėkite dar vieną funkciją HOUR, kad galėtumėte nustatyti laiką.

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

    Patarimas. Žiūrėkite, kad į rezultatą nebūtų įtraukta 12:41 VAL. ? Taip yra todėl, kad skaičiuoklėje tai traktuojama kaip 00:41 kuri yra mažesnė už 2:00 .

    Jei radote elegantiškesnį sprendimą, pasidalykite juo toliau pateiktame komentarų skyriuje.

    Kaip filtruoti "Google Sheets" naudojant ląstelių nuorodas

    Kiekvieną kartą kurdami "Google Sheets" filtro formulę turite įvesti tokią sąlygą, kokia ji yra: žodį ar jo dalį, datą ir t. t. Nebent esate susipažinę su ląstelių nuorodomis.

    Jos palengvina daugelį dalykų, susijusių su formulėmis, nes užuot viską įvedę, galite tiesiog nurodyti langelius su sąlygomis.

    Prisimenate, kaip ieškojau visų vėluojančių užsakymų? Galiu greitai padaryti nuorodą į E4 su tekstu Vėlyvasis daryti tą patį:

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

    Rezultatas visiškai nesiskirs:

    Tai galite pakartoti su visomis anksčiau minėtomis formulėmis. Pavyzdžiui, venkite pridėti daugiau funkcijų, pavyzdžiui, DATA, ir tiesiog nurodykite ląstelę su dominančia data:

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

    Patarimas. Ląstelių nuorodos taip pat leidžia filtruoti iš kito lapo. Jums tereikia suvesti lapo pavadinimą:

    =FILTER(Užsakymai!A1:E20,Užsakymai!C1:C20=Užsakymai!C15)

    "Google Sheets" filtravimo formulės su keliais kriterijais

    Nors anksčiau visose "Google Sheets" filtravimo formulėse daugiausia naudojau vieną sąlygą, labiau tikėtina, kad jums reikės filtruoti lentelę pagal kelias sąlygas vienu metu.

    1 pavyzdys. IS BETWEEN logika

    Jei norite rasti visas eilutes, esančias tarp dviejų skaičių, datų ir laikų, pravers pasirenkamieji funkcijos argumentai - sąlyga2 , sąlyga3 ir t. t. Kiekvieną kartą tiesiog dubliuojate tą patį intervalą, bet su nauja sąlyga.

    Ketinu grąžinti tik tuos užsakymus, kurie man kainavo daugiau nei 250, bet mažiau nei 350 JAV dolerių:

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

    2 pavyzdys. OR logika "Google Sheets FILTER" funkcijoje

    Deja, norint gauti visas eilutes, kuriose yra skirtingų įrašų dominančiame stulpelyje, ankstesnis būdas nepadės. Taigi kaip patikrinti visus užsakymus, kurie yra ir pakeliui, ir vėluoja?

    Jei bandysiu naudoti ankstesnį metodą ir įvesiu kiekvieną užsakymo būseną į atskirą sąlygą, gausiu #N/A klaidą:

    Taigi, norėdamas teisingai nustatyti funkcijos FILTER logiką OR, turėčiau šiuos du kriterijus sudėti į vieną sąlygą:

    =FILTER(A1:E20,(E1:E20="Vėluoju")+(E1:E20="Pakeliui"))

    Kelių stulpelių filtro įtraukimas į "Google" lenteles

    Dar labiau tikėtina, kad už kelių sąlygų taikymą vienam stulpeliui "Google Sheets" sukursite filtrą keliems stulpeliams.

    Visi argumentai yra tie patys. Tačiau kiekvienai naujai formulės daliai reikia naujo diapazono su savais kriterijais.

    Pabandykime padaryti taip, kad "Google Sheets" funkcija FILTER grąžintų užsakymus, kurie atitinka visas toliau nurodytas taisykles:

    1. Jų vertė turėtų būti 200-400 JAV dolerių:

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

    2. Turi būti pradėtos 2020 m. sausio mėn:

      MĖNUO(C1:C20)=1

    3. Ir vis dar yra pakeliui:

      E1:E20="pakeliui"

    Sudėkite visas šias dalis ir "Google Sheets" filtrų formulė keliems stulpeliams bus paruošta:

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

    Išplėstinis "Google Sheets" filtras be formulių

    FILTER funkcija yra puiki, tačiau kartais jos gali būti per daug. Visų argumentų, skiriamųjų ženklų, įterptų funkcijų ir kitų dalykų sekimas gali būti labai painus ir atimti daug laiko.

    Laimei, turime geresnį sprendimą, kuris pranoksta tiek "Google Sheets" filtravimo funkciją, tiek jų standartinį įrankį - daugkartinius VLOOKUP atitikmenis.

    Nesusimąstykite dėl jos pavadinimo. Ji panaši į "Google Sheets" VLOOKUP funkciją, nes ji ieško atitikmenų. Lygiai taip pat, kaip ir FILTER funkcija. Lygiai taip pat, kaip tai padariau pirmiau.

    Čia yra 5 pagrindiniai privalumai įrankio per "Google Sheets" funkciją FILTER:

    1. Jums nereikės galvoti apie skirtingų sąlygų operatoriai - tiesiog išsirinkite vieną iš sąrašo:

  • Įveskite datas ir laiką kaip visada skaičiuoklėse - jokių specialių funkcijų:
  • Sukurti ir ištrinti kelios sąlygos svetainėje kelis stulpelius labai greitai :
  • Rezultato peržiūra ir pakoreguokite sąlygas (jei reikia) prieš viską įklijuodami į lapą:
  • Gauti rezultatą kaip reikšmes arba kaip paruoštą formulė .
  • Nuoširdžiai raginu įdiegti "Multiple VLOOKUP Matches" ir išbandyti šią programą. Jei norite atidžiau susipažinti su jos galimybėmis, apsilankykite jos mokomajame puslapyje arba peržiūrėkite specialų mokomąjį vaizdo įrašą:

    Michaelas Brownas yra atsidavęs technologijų entuziastas, mėgstantis supaprastinti sudėtingus procesus naudojant programinės įrangos įrankius. Turėdamas daugiau nei dešimtmetį patirtį technologijų pramonėje, jis patobulino savo įgūdžius „Microsoft Excel“ ir „Outlook“, taip pat „Google“ skaičiuoklėse ir dokumentuose. Michaelio tinklaraštis skirtas dalytis savo žiniomis ir patirtimi su kitais, jame pateikiami lengvai įgyvendinami patarimai ir vadovėliai, kaip pagerinti produktyvumą ir efektyvumą. Nesvarbu, ar esate patyręs profesionalas, ar pradedantysis, Michaelo tinklaraštyje rasite vertingų įžvalgų ir praktinių patarimų, kaip išnaudoti visas šių pagrindinių programinės įrangos įrankių galimybes.