Obsah
Ak jediným spôsobom, ktorý poznáte pri vytváraní filtrov v tabuľkách Google, je štandardný nástroj, mám pre vás prekvapenie :) Poďte so mnou preskúmať funkciu FILTER. K dispozícii je množstvo hotových vzorcov, ktoré si môžete požičať, spolu s novým výkonným nástrojom, ktorý sadu nástrojov na filtrovanie výrazne dopĺňa.
Pred časom sme si vysvetlili, ako filtrovať v Tabuľkách Google pomocou štandardného nástroja. Spomenuli sme, ako filtrovať podľa hodnoty a podmienky. Tabuľky však v sebe vždy skrývajú viac, ako vieme. A tentoraz s vami preskúmam funkciu Google Sheets FILTER.
V Exceli ju nenájdete, takže sa určite oplatí ju vyskúšať.
Syntax funkcie Google Sheets FILTER
FILTER v hárkoch Google prehľadá vaše údaje a vráti požadované informácie, ktoré spĺňajú vaše kritériá.
Na rozdiel od štandardného filtra v tabuľke Google Sheets táto funkcia nerobí nič s pôvodnými údajmi. Skopíruje nájdené riadky a vloží ich tam, kde zostavíte vzorec.
Syntax je pomerne jednoduchá, pretože každý argument hovorí sám za seba:
=FILTER(range, condition1, [condition2, ...])- rozsah sú údaje, ktoré chcete filtrovať. Požadované.
- podmienka1 je stĺpec alebo riadok spolu s kritériami TRUE/FALSE, pod ktoré by mal spadať. Požadované.
- condition2,... , atď., znamenajú iné stĺpce/riadky a/alebo iné kritériá. Nepovinné.
Poznámka: Každý stav by mal mať rovnakú veľkosť ako rozsah .
Poznámka: Ak použijete viacero podmienok, všetky by mali byť buď pre stĺpce, alebo pre riadky. Funkcia Google Sheets FILTER neumožňuje zmiešané podmienky.
Po týchto poznámkach sa teraz pozrime, ako sa formujú argumenty rôznych vzorcov.
Ako používať funkciu FILTER v tabuľkách Google
Ukážem vám všetky príklady pri filtrovaní malej tabuľky, v ktorej sledujem niektoré objednávky:
Tabuľka obsahuje 20 riadkov s rôznymi typmi údajov, ktoré sú ideálne na naučenie funkcie.
Ako filtrovať v tabuľkách Google podľa textu
Príklad 1. Text je presne
Najprv požiadam funkciu, aby zobrazila len tie objednávky, ktoré meškajú. Zadám rozsah na filtrovanie - A1:E20 - a potom nastavte podmienku - stĺpec E by sa mala rovnať Neskoro :
=FILTER(A1:E20,E1:E20="Late")
Príklad 2. Text presne nie je
Môžem požiadať funkciu, aby mi získala všetky objednávky okrem tých, ktoré sa oneskorili. Na to budem potrebovať špeciálny operátor porovnania (), ktorý znamená sa nerovná :
=FILTER(A1:E20,E1:E20"Late")
Príklad 3. Text obsahuje
Teraz by som vám chcel ukázať, ako vytvoriť funkciu FILTER v tabuľkách Google na základe čiastočnej zhody. Alebo inými slovami - ak text obsahuje .
Všimli ste si, že ID objednávok v stĺpci A obsahujú na svojom konci skratky krajín? Vytvorme vzorec na získanie iba objednávok, ktoré boli odoslané z Kanady ( CA ).
Za normálnych okolností by ste na túto úlohu použili zástupné znaky. Ale pokiaľ ide o vzorec FILTER, týmto spôsobom pracujú funkcie FIND a SEARCH.
Tip: Ak sa pri filtrovaní podľa jednoduchých výskytov slov radšej vyhnete vnoreniu ďalších funkcií, neváhajte vyskúšať doplnok opísaný na konci.
Poznámka: Ak je dôležitá veľkosť písmen textu, použite položku FIND, v opačnom prípade vyberte položku SEARCH.
V mojom príklade bude stačiť funkcia HLEDANIE, pretože veľkosť písmen v texte nie je dôležitá:
=SEARCH(search_for, text_to_search, [starting_at])- search_for je text, ktorý chcem nájsť. Je naozaj dôležité, aby bol obalený dvojitými úvodzovkami: "ca" ... Požadované.
- text_to_search je rozsah, v ktorom sa hľadá potrebný text. Požadované. A1:A20 pre mňa.
- starting_at označuje počiatočnú pozíciu pre vyhľadávanie - číslo znaku, od ktorého sa má začať hľadať. Je úplne nepovinný, ale musím ho použiť. Vidíte, že všetky ID objednávok sa skladajú z písmen a číslic, čo znamená dvojicu CA sa môžu vyskytovať niekde medzi nimi. Identický vzor všetkých ID mi umožňuje hľadať CA od 8. znaku.
Po zhromaždení všetkých týchto častí získam požadovaný výsledok:
=FILTER(A1:E20,SEARCH("ca",A1:A20,8))
Ako filtrovať podľa dátumu a času v hárkoch Google
Filtrovanie podľa dátumu a času si vyžaduje aj použitie ďalších funkcií. V závislosti od vašich kritérií môže byť potrebné vložiť do hlavnej funkcie Google Sheets FILTER DEN, MESIAC, ROK alebo dokonca DÁTUM a ČAS.
Tip. Ak sa v nich nevyznáte alebo vždy niečo popletiete s dátumami - žiadny strach. Nástroj opísaný na konci nevyžaduje vôbec žiadne funkcie.
Príklad 1. Dátum je
Ak chcete získať tie objednávky, ktoré sú splatné 9. januára 2020, pozvem funkciu DÁTUM:
=FILTER(A1:E20,C1:C20=DATE(2020,1,9))
Poznámka: Toto funguje len vtedy, ak vaše bunky neobsahujú časové jednotky spolu s dátumom (tabuľkový procesor ich môže predvolene pridať). Ak sa chcete uistiť, stačí vybrať bunku a skontrolovať, čo sa zobrazí na paneli vzorcov:
Ak je tam čas a jeho odstránenie nie je možné, mali by ste použiť buď QUERY, alebo zložitejšiu podmienku vo funkcii FILTER v hárkoch Google, napríklad túto:
=FILTER(A1:E20,C1:C20>=DATE(2020,1,9),C1:C20
Tip. Nižšie sa podrobnejšie venujem viacerým podmienkam.
Príklad 2. Dátum obsahuje
Ak vás zaujíma len konkrétny mesiac alebo rok, vystačíte si s funkciami MESIAC a ROK. Vložte do nej priamo rozsah s dátumami ( C1:C20 ) a zadajte číslo mesiaca (alebo roka), ktorému sa má rovnať ( =1 ):
=FILTER(A1:E20,MONTH(C1:C20)=1)
Príklad 3. Dátum je pred/po
Ak chcete získať údaje, ktoré spadajú pred alebo po zadanom dátume, budete potrebovať funkciu DATE a operátory porovnávania ako väčšie ako (>), väčšie alebo rovné (>=), menšie ako (<), menšie alebo rovné (<=).
Tu sú objednávky, ktoré boli prijaté 1. januára 2020 a neskôr:
=FILTER(A1:E20,D1:D20>=DATE(2020,1,1))
Samozrejme, môžete tu ľahko nahradiť DATE mesiacom alebo rokom. Výsledok sa nebude líšiť od vyššie uvedeného:
=FILTER(A1:E20,YEAR(D1:D20)>=2020)
Príklad 4. Čas
Pri filtrovaní v tabuľkách Google Sheets podľa času je postup úplne rovnaký ako pri dátumoch. Používate dodatočnú funkciu ČAS.
Ak chcete napríklad získať iba dni s časovou značkou po 14:00, vzorec bude:
=FILTER(A1:B10,A1:A10>TIME(14,0,0))
Keď však príde na použitie funkcie HODINA (rovnako ako pri funkcii MESIAC pre dátumy), hra sa trochu zmení. Čas je v tabuľkách dosť zložitý, takže je potrebné urobiť niekoľko úprav.
Vrátenie všetkých riadkov s časovými značkami medzi 14:00 a 12:00 , urobte to:
- Obklopte rozsah časovými značkami ( A1:A10 ) v samostatnej funkcii HOUR. Tým sa určí, kde sa má hľadať.
- Potom pridajte ďalšiu funkciu HOUR na nastavenie samotného času.
=FILTER(A1:B10,HOUR(A1:A10)>=HOUR("2:00:00 PM"))
Tip. Uistite sa, že výsledok neobsahuje 12:41 ? Je to preto, že tabuľka to považuje za 00:41 čo je menej ako 2:00 .
Ak ste našli elegantnejšie riešenie, podeľte sa oň v komentároch nižšie.
Ako filtrovať v tabuľkách Google pomocou odkazov na bunky
Pri každom vytvorení filtračného vzorca v tabuľke Google Sheets musíte zadať podmienku tak, ako je: či už slovo alebo jeho časť, dátum atď. Pokiaľ nepoznáte odkazy na bunky.
Uľahčujú mnohé veci týkajúce sa vzorcov. Namiesto toho, aby ste všetko vypisovali, môžete jednoducho odkazovať na bunky s podmienkami.
Pamätáte si, ako som hľadal všetky objednávky, ktoré sa oneskorili? Môžem sa rýchlo odvolať na E4 s textom Neskoro urobiť to isté:
=FILTER(A1:E20,E1:E20=E4)
Výsledok sa vôbec nebude líšiť:
Tento postup môžete zopakovať so všetkými vyššie uvedenými vzorcami. Vyhnite sa napríklad pridávaniu ďalších funkcií, ako je DATE, a len sa odvolajte na bunku so zaujímavým dátumom:
=FILTER(A1:E20,C1:C20=C15)
Tip. Odkazy na bunky umožňujú aj filtrovanie z iného hárku. Stačí, ak uvediete názov hárku:
=FILTER(Objednávky!A1:E20,Objednávky!C1:C20=Objednávky!C15)
Vzorce FILTER v tabuľkách Google s viacerými kritériami
Hoci som predtým vo všetkých vzorcoch filtrovania v tabuľkách Google Sheets používal hlavne jednu podmienku, je pravdepodobnejšie, že budete potrebovať filtrovať tabuľku podľa niekoľkých podmienok naraz.
Príklad 1. Logika IS BETWEEN
Ak chcete nájsť všetky riadky spadajúce medzi dve čísla/dátumy/časy, budú sa vám hodiť voliteľné argumenty funkcie - podmienka2 , podmienka3 , atď. Zakaždým len zopakujete ten istý rozsah, ale s novou podmienkou.
Budem vracať len tie objednávky, ktoré ma stáli viac ako 250 dolárov, ale menej ako 350 dolárov:
=FILTER(A1:E20,B1:B20>=250,B1:B20<350)
Príklad 2. Logika OR vo funkcii Google Sheets FILTER
Bohužiaľ, na získanie všetkých riadkov, ktoré obsahujú rôzne záznamy v stĺpci záujmu, sa predchádzajúci spôsob nehodí. Ako teda môžem skontrolovať všetky objednávky, ktoré sú na ceste aj oneskorené?
Ak skúsim predchádzajúcu metódu a zadám každý stav objednávky do samostatnej podmienky, zobrazí sa chyba #N/A:
Aby som teda správne nastavil logiku OR vo funkcii FILTER, mal by som tieto dve kritériá zhrnúť do jednej podmienky:
=FILTER(A1:E20,(E1:E20="Neskoro")+(E1:E20="Na ceste"))
Pridanie filtra do hárkov Google do viacerých stĺpcov
Ešte pravdepodobnejšie ako použitie niekoľkých podmienok na jeden stĺpec je vytvorenie filtra v tabuľkách Google pre viacero stĺpcov.
Všetky argumenty sú rovnaké. Každá nová časť vzorca si však vyžaduje nový rozsah s vlastnými kritériami.
Pokúsime sa, aby funkcia FILTER v tabuľkách Google Sheets vrátila príkazy, ktoré spadajú pod všetky nasledujúce pravidlá:
- Ich hodnota by mala byť 200-400 dolárov:
A1:E20,B1:B20>=200,B1:B20<=400
- Sú splatné v januári 2020:
MESIAC(C1:C20)=1
- A stále sú na ceste:
E1:E20="na ceste"
Spojte všetky tieto časti dohromady a vzorec filtra pre viacero stĺpcov v tabuľke Google Sheets je pripravený:
=FILTER(A1:E20,B1:B20>=200,B1:B20<=400,MONTH(C1:C20)=1,E1:E20="on the way")
Spôsob bez vzorcov pre pokročilý filter hárkov Google
Funkcia FILTER je skvelá a všetko, ale niekedy toho môže byť príliš veľa. Sledovanie všetkých argumentov, oddeľovačov, vnorených funkcií a podobne môže byť veľmi mätúce a časovo náročné.
Našťastie máme lepšie riešenie, ktoré presahuje funkciu FILTER v hárkoch Google aj ich štandardný nástroj - viacnásobné zhody VLOOKUP.
Nenechajte sa zmiasť jej názvom. Podobá sa funkcii VLOOKUP v tabuľke Google Sheets, pretože vyhľadáva zhody. Tak ako to robí funkcia FILTER. Tak ako som to urobil vyššie.
Tu sú 5 hlavných výhod nástroja nad funkciou FILTER z hárkov Google:
- Nebudete musieť myslieť na operátori pre rôzne podmienky - stačí si vybrať jeden zo zoznamu:
Skutočne vám odporúčam, aby ste si nainštalovali program Multiple VLOOKUP Matches a vyskúšali ho. Ak si chcete bližšie pozrieť jeho možnosti, navštívte jeho stránku s návodom alebo si pozrite špeciálne inštruktážne video: