Automatický filter VBA Ako používať kritériá automatického filtra VBA na filtrovanie údajov?

Automatický filter Excel VBA

Automatický filter vo VBA sa používa ako výraz a jeho syntax je nasledujúca ako výraz. Automatické filtrovanie (pole, kritérium 1, operátor, kritérium 2, rozbaľovací zoznam) všetky argumenty sú voliteľné. Filter je užitočný pri filtrovaní konkrétnych údajov z obrovských údajov.

Predpokladajme, že ste bežným používateľom, takže filtre programu Excel pre vás nie sú ničím zvláštnym. Niektoré z nástrojov, ktoré používame v pracovnom hárku, sú tiež integrované do VBA a možnosť automatického filtra je jedným z dôležitých nástrojov dostupných vo VBA. Ako všetci vieme, filter Excel je k dispozícii na karte údajov.

Pomocou tejto možnosti filtra sa môžeme pohrať s údajmi. Ak pracujete s minimálnym množstvom údajov a ak si myslíte, že možnosť automatického filtrovania VBA nie je skutočne vyžadovaná, môžete pokračovať v používaní možnosti filtra pracovného hárka.

Ak pracujete s veľkým množstvom údajov, môžete na zjednodušenie procesu využiť voľbu Automatický filter.

Syntax funkcie automatického filtra

Automatický filter v programe Excel VBA je možné použiť s objektom rozsahu. Rovnako ako naše ďalšie funkcie, aj táto má svoju vlastnú syntax.

  • Rozsah: Rozsah je jednoducho v tom rozsahu, v ktorom chcete použiť filter.
  • Pole: Pole znamená, z ktorého stĺpca rozsahu, ktorý ste vybrali, chcete filtrovať údaje. Stĺpec sa bude počítať zľava doprava.

Napríklad ak je váš rozsah od A1 do D100 a chcete použiť filter pre stĺpec D, potom je vaše číslo poľa 4, pretože vo vybranom rozsahu je D štvrtý stĺpec.

Kritérium 1: V poli ste vybrali, čo chcete filtrovať.

  • Prevádzkovateľ: Ak chcete na filtrovanie údajov použiť viac ako jedno kritérium, potom musíme použiť operátorské symboly. Niektoré z kódov operátora sú uvedené nižšie.

xlAnd, xlOr, xlBottom10Items, xlTop10Items, xlTop10Percent, xlBottom10Percent, xlFilterCellColor, xlFilterDynamic, xlFilterFontColor, xlFilterIcon, xlFilterValues.

Kritérium 2: Čo je druhá vec, ktorú chcete filtrovať spolu s kritériom 1?

  • Viditeľná rozbaľovacia ponuka: Chcete vo filtrovanom stĺpci zobraziť ikonu filtra fop nadol. Ak chcete zobraziť TRUE, je argument, ak nie FALSE, je argument.

Ako použiť filter pomocou automatického filtra VBA? (s príkladom)

Predpokladajme pod údajmi, na ktorých pracuješ.

Teraz pomocou kódu VBA použijeme filter. Pri použití filtra postupujte podľa nasledujúcich pokynov.

Krok 1: Začnite podproces pomenovaním makra.

Kód:

Sub AutoFilter_Example1 () End Sub

Krok 2: Prvá vec je, v akom rozsahu musíme filter použiť. V takom prípade musíme použiť rozsah od rozsahu A1 do E25.

Kód:

Sub AutoFilter_Example1 () Range ("A1: E25") End Sub

Krok 3: Po výbere rozsahu teraz použite možnosť automatického filtra.

Kód:

Sub AutoFilter_Example1 () Range ("A1: E25"). Sub End AutoFilter

Nevyberáme žiadne hodnoty pomocou automatického filtra. V tejto chvíli skôr iba aplikujeme filter.

Spustite kód pomocou klávesu F5 alebo ručne, vloží sa filter pre vybratý rozsah.

Na dáta teda použila filter. Teraz uvidíme, ako odfiltrovať údaje.

Príklad č. 1 - Filtrovať údaje pomocou automatického filtra

Zvážte rovnaké údaje z vyššie uvedeného príkladu. Teraz musíme odfiltrovať oddelenie „Financie“ zo stĺpca oddelenia.

Krok 1: Po použití filtra je prvým argumentom zmienka, z ktorého stĺpca filtrujeme údaje. V takom prípade musíme filtrovať údaje zo stĺpca Oddelenie, teda číslo stĺpca, ak je 5.

Kód:

Sub AutoFilter_Example1 () Range ("A1: E25"). Pole AutoFilter: = 5, End Sub

Krok 2: Kritériá 1 nie je nič iné než to, čo chceme, aby filter z 5 th kolóny. Musíme teda odfiltrovať „Financie“.

Kód:

Sub AutoFilter_Example1 () Range ("A1: E25"). Field AutoFilter Field: = 5, Criteria1: = "Finance" End Sub

Takže to je všetko, spustite tento kód manuálne alebo pomocou klávesu F5 vyfiltruje zo zoznamu iba „Financie“.

Príklad č. 2 - Operátor v automatickom filtri

Videli sme, ako filtrovať jednu hodnotu. Teraz uvidíme, ako filtrovať viac prvkov. Predpokladajme, že spolu s položkou „Financie“ chcete filtrovať aj oddelenie „Predaj“, aby sme tak mohli urobiť pomocou operátorov.

Krok 1: Po uplatnení prvých kritérií v ďalšom argumente vyberte operátor ako „xlOr“.

Kód:

Sub AutoFilter_Example2 () Range ("A1: E25"). Field AutoFilter Field: = 5, Criteria1: = "Finance", Operator: = xlOr End Sub

Krok 2: Teraz na kritériu 2 uveďte hodnotu ako „Predaj“.

Kód:

Sub AutoFilter_Example2 () Range ("A1: E25"). Field AutoFilter Field: = 5, Criteria1: = "Finance", Operator: = xlOr, Criteria2: = "Sales" End Sub

Krok 3: Dobre, spustite tento kód pomocou klávesu F5 alebo manuálne. Odfiltruje sa výraz „Financie“ aj „Predaj“.

V argumente Operátor som použil reťazec „xlOr “, ktorý pod filtrom vyberie možnosti „Financie“ aj „Predaj“ .

Príklad č. 3 - Filtrovanie čísel pomocou automatického filtra

Using the Operator symbol “XlAnd,” we can filter out numbers as well. Assume from the Overtime column you want to filter out all the values which are>1000 but <3000.

Step 1: The first thing is changing the Field from 5 to 4.

Code:

Sub AutoFilter_Example3() Range("A1:E25").AutoFilter Field:=4 End Sub

Step 2: Criteria 1 is>1000.

Code:

Sub AutoFilter_Example3() Range("A1:E25").AutoFilter Field:=4,Criteria1:=">1000", End Sub

Step 3: Here, we need to match both the criteria, so use “xlAnd” as the operator.

Code:

Sub AutoFilter_Example3() Range("A1:E25").AutoFilter Field:=4, Criteria1:=">1000", Operator:=xlAnd, End Sub

Step 4: Criteria 2 will <3000.

Code:

Sub AutoFilter_Example3() Range("A1:E25").AutoFilter Field:=4, Criteria1:=">1000", Operator:=xlAnd, Criteria2:="<3000" End Sub

Now, if you run this code manually or through the F5 key, it will filter out all the values from the Overtime column, which are>1000 but <3000.

Example #4 - Filter from Different Columns using AutoFilter

In order to filter out data from different columns, we need to use a different process. Assume you want to filter out the “Finance” department and also you want to filter out Salary numbers, which are>25000 but <40000.

You can use the below code does that.

Code:

Sub AutoFilter_Example4 () With Range ("A1: E25"). Pole AutoFilter: = 5, Criteria1: = "Finance". Pole AutoFilter: = 2, Criteria1: = "> 25000", operátor: = xlAnd, Criteria2: = " <40000 "Koniec Koncom Sub

Týmto sa odfiltrujú dva stĺpce.

Tento kód spustíte pomocou klávesu F5, alebo ho môžete spustiť manuálne.

Na čo treba pamätať

  • Vyskúšajte rôzne kombinácie v časti Operátor a získate vedomosti o automatickom filtri VBA.
  • Ak si nie ste istí, čo máte vložiť, skúste použiť záznamník makier.
  • Ak chcete odfiltrovať textové hodnoty, musíte ich uviesť v úvodzovkách.
  • Použite príkaz WITH na použitie viac ako jedného filtra stĺpca.

Zaujímavé články...