Automatický filtr VBA - Jak používat kritéria automatického filtrování VBA k filtrování dat?

Automatický filtr VBA aplikace Excel

Automatický filtr ve VBA se používá jako výraz a jeho syntaxe, jak je uvedeno v následujícím výrazu. Autofilter (Field, Criteria 1, Operator, Criteria 2, Dropdown) všechny argumenty jsou volitelné. Filtr je užitečný při filtrování konkrétních dat z obrovských dat.

Předpokládejme, že jste běžný uživatel, takže filtry aplikace Excel pro vás nejsou divnou věcí. Některé z nástrojů, které používáme v listu, jsou také integrovány do VBA a možnost automatického filtru je jedním z důležitých nástrojů dostupných ve VBA. Jak všichni víme, filtr Excel je k dispozici na kartě Data.

Pomocí této možnosti filtru si můžeme pohrát s daty. Pokud máte co do činění s minimálním množstvím dat a pokud si myslíte, že možnost automatického filtrování VBA není opravdu vyžadována, můžete i nadále používat možnost filtrování listu.

Pokud máte co do činění s velkým množstvím dat, můžete ke zjednodušení toku procesu použít volbu Automatický filtr.

Syntaxe funkce automatického filtru

Automatický filtr v aplikaci Excel VBA lze použít s objektem rozsahu. Stejně jako naše další funkce má i tato svou vlastní syntaxi.

  • Rozsah: Rozsah je jednoduše v tom rozsahu, ve kterém chcete použít filtr.
  • Pole: Pole znamená, ze kterého sloupce rozsahu, který jste vybrali, chcete filtrovat data. Sloupec se bude počítat zleva doprava.

Například pokud je váš rozsah od A1 do D100 a chcete použít filtr pro sloupec D, pak je vaše číslo pole 4, protože ve vybraném rozsahu je D čtvrtý sloupec.

Kritérium 1: V poli jste vybrali, co chcete filtrovat.

  • Operátor: Pokud chcete pro filtrování dat použít více než jedno kritérium, musíme použít operátorské symboly. Některé kódy operátora jsou uvedeny níže.

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

Kritérium 2: Co je druhá věc, kterou chcete filtrovat spolu s kritériem 1?

  • Viditelná rozevírací nabídka: Chcete ve filtrovaném sloupci zobrazit ikonu fop filtru dolů. Pokud chcete zobrazit TRUE, je argument, pokud ne FALSE, je argument.

Jak použít filtr pomocí automatického filtru VBA? (s příkladem)

Předpokládejme, pod daty, na kterých pracujete.

Nyní pomocí kódu VBA použijeme filtr. Při použití filtru postupujte podle následujících kroků.

Krok 1: Spusťte podproces zadáním názvu makra.

Kód:

Sub AutoFilter_Example1 () End Sub

Krok 2: První věc je, v jakém rozsahu musíme použít filtr. V tomto případě musíme použít rozsah od rozsahu A1 do E25.

Kód:

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

Krok 3: Po výběru rozsahu nyní použijte možnost automatického filtru.

Kód:

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

Nevybíráme žádné hodnoty pomocí automatického filtru. V tuto chvíli spíše aplikujeme filtr.

Spusťte kód pomocí klávesy F5 nebo ručně, vloží filtr pro vybraný rozsah.

Na data tedy použil filtr. Nyní uvidíme, jak filtrovat data.

Příklad č. 1 - Filtrování dat pomocí automatického filtru

Zvažte stejná data z výše uvedeného příkladu. Nyní musíme odfiltrovat oddělení „Finance“ ze sloupce oddělení.

Krok 1: Po použití filtru je prvním argumentem zmínka, ze kterého sloupce filtrujeme data. V tomto případě musíme filtrovat data ze sloupce Oddělení, takže číslo sloupce, pokud je 5.

Kód:

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

Krok 2: Kritéria 1 není nic jiného než to, co chceme, aby filtr z 5 th kolony. Musíme tedy odfiltrovat „Finance“.

Kód:

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

Takže to je vše, spusťte tento kód ručně nebo pomocí klávesy F5 vyfiltruje ze seznamu pouze „Finance“.

Příklad č. 2 - Provozovatel v automatickém filtru

Viděli jsme, jak filtrovat jednu hodnotu. Nyní uvidíme, jak filtrovat více prvků. Předpokládejme, že spolu s položkou „Finance“ chcete filtrovat také oddělení „Prodej“, abychom to mohli provést pomocí operátorů.

Krok 1: Po uplatnění prvních kritérií v dalším argumentu vyberte operátor jako „xlOr“.

Kód:

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

Krok 2: Nyní v kritériu 2 uveďte hodnotu jako „Prodej“.

Kód:

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

Krok 3: Dobře, spusťte tento kód pomocí klávesy F5 nebo ručně, odfiltruje se jak „Finance“, tak „Prodej“.

V argumentu Operátor jsem použil „xlOr “, pod filtrem se vybere „Finance“ i „Prodej“ .

Příklad č. 3 - Filtrování čísel pomocí automatického filtru

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:

Dílčí AutoFilter_Example4 () s rozsahem ("A1: E25"). Pole AutoFilter: = 5, Kritérium 1: = "Finance". Pole AutoFilter: = 2, Kritérium1: = "> 25000", Provozovatel: = xlAnd, Kritérium2: = " <40000 "End With End Sub

Tím se odfiltrují dva sloupce.

Spusťte tento kód pomocí klávesy F5, nebo můžete spustit ručně.

Věci k zapamatování

  • Vyzkoušejte různé kombinace v části Operátor a získejte znalosti automatického filtru VBA.
  • Pokud si nejste jisti, co do něj vložit, zkuste použít záznamník maker.
  • Chcete-li odfiltrovat textové hodnoty, musíte je zadat v uvozovkách.
  • Pomocí příkazu WITH použijte více než jeden filtr sloupců.

Zajímavé články...