VBA AutoFilter - Kako koristiti VBA kriterije automatskog filtriranja za filtriranje podataka?

Excel VBA AutoFilter

AutoFilter u VBA koristi se kao izraz, a sintaksa za njega slijedi Izraz. Automatsko filtriranje (polje, kriteriji 1, operator, kriteriji 2, padajući meni) svi su argumenti neobavezni. Filter je koristan u filtriranju određenih podataka iz ogromnih podataka.

Pretpostavimo da ste redoviti korisnik, tada excel filtri za vas nisu neobična stvar. Neki od alata koje koristimo na radnom listu također su integrirani u VBA, a opcija automatskog filtriranja jedan je od važnih alata dostupnih u VBA. Kao što svi znamo, excel filtar dostupan je na kartici podataka.

Pomoću ove opcije filtra možemo se poigrati s podacima. Ako imate posla s minimalnom količinom podataka i ako smatrate da opcija VBA autofiltera zapravo nije potrebna, možete i dalje koristiti opciju filtra radnog lista.

Ako imate posla s ogromnom količinom podataka, tada možete upotrijebiti opciju Autofilter kako biste pojednostavili tijek procesa.

Sintaksa funkcije automatskog filtra

AutoFilter u programu Excel VBA može se koristiti s objektom raspona. Kao i ostale naše funkcije, i ova ima svoju sintaksu.

  • Raspon: Raspon je jednostavno u onom opsegu u kojem biste željeli primijeniti filtar.
  • Polje: Polje znači iz kojeg stupca raspona koji ste odabrali želite filtrirati podatke. Stupac će se brojati slijeva udesno.

Na primjer, ako je vaš raspon od A1 do D100 i želite primijeniti filtar za stupac D, tada je broj vašeg polja 4 jer je u odabranom rasponu D četvrti stupac.

Kriterij 1: U polju ste odabrali ono što želite filtrirati.

  • Operator: Ako želite primijeniti više od jednog kriterija za filtriranje podataka, tada moramo koristiti simbole operatora. Neki od kodova operatora su kao u nastavku.

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

Kriteriji 2: Što je drugo što želite filtrirati zajedno s kriterijima 1?

  • Vidljivi padajući meni: Želite li prikazati ikonu prevrtanja filtra prema dolje u filtriranom stupcu. Ako želite prikazati ISTINA je argument, ako ne FALSE, argument je.

Kako primijeniti filtar pomoću VBA AutoFiltera? (s primjerom)

Pretpostavite ispod podataka na kojima radite.

Sada ćemo pomoću VBA koda primijeniti filtar. Slijedite korake u nastavku za primjenu filtra.

Korak 1: Pokrenite potpostupak davanjem imena makronaredbi.

Kodirati:

Sub AutoFilter_Example1 () Kraj Sub

Korak 2: Prva stvar je u kojem opsegu trebamo primijeniti filtar. U ovom slučaju moramo primijeniti raspon od raspona A1 do E25.

Kodirati:

Sub AutoFilter_Example1 () Raspon ("A1: E25") Kraj Sub

Korak 3: Nakon odabira raspona, sada primijenite opciju automatskog filtriranja.

Kodirati:

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

Ne odabiremo nikakve vrijednosti pomoću automatskog filtra. Umjesto toga, mi samo primjenjujemo filter u ovom trenutku.

Pokrenite kôd pomoću tipke F5 ili će ručno umetnuti filtar za odabrani raspon.

Stoga je primijenio filtar na podatke. Sad ćemo vidjeti kako filtrirati podatke.

Primjer # 1 - Filtriranje podataka pomoću automatskog filtra

Razmotrimo iste podatke iz gornjeg primjera. Sada moramo filtrirati odjel "Financije" iz stupca odjela.

Korak 1: Nakon primjene filtra, prvi argument je spomenuti iz kojeg stupca filtriramo podatke. U tom slučaju moramo filtrirati podatke iz stupca Odjela, dakle broj stupca ako je 5.

Kodirati:

Sub AutoFilter_Example1 () Raspon ("A1: E25"). Polje automatskog filtra: = 5, Kraj Sub

Korak 2: Kriteriji jedan nije ništa drugo nego ono što želimo filter od 5 -og stupca. Stoga moramo filtrirati "Financije".

Kodirati:

Sub AutoFilter_Example1 () Raspon ("A1: E25"). Polje automatskog filtra: = 5, Criteria1: = "Finance" Kraj Sub

Dakle, to je sve, pokrenite ovaj kod ručno ili će pomoću tipke F5 na popisu filtrirati samo "Financije".

Primjer # 2 - Operator u automatskom filtriranju

Vidjeli smo kako filtrirati jednu vrijednost. Sada ćemo vidjeti kako filtrirati više elemenata. Pretpostavimo da zajedno s "Financijama" želite filtrirati i odjel "Prodaja", pa to možemo učiniti pomoću Operatora.

Korak 1: Nakon primjene prvih kriterija u sljedećem argumentu, odaberite operatora kao “xlOr.”

Kodirati:

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

Step 2: Now, in Criteria 2, mention the value as “Sales.”

Code:

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

Step 3: Ok, done run this code using the F5 key or manually, it will filter out both “Finance” & “Sales.”

In the Operator argument, I have used “xlOr” this will select both “Finance” & “Sales” under the filter.

Example #3 - Filter Numbers using AutoFilter

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 () s rasponom ("A1: E25"). Polje AutoFilter: = 5, Kriteriji1: = "Financije". Polje AutoFilter: = 2, Kriteriji1: = "> 25000", Operator: = xlAnd, Kriteriji2: = " <40000 "Kraj s krajem Sub

Ovo će filtrirati dva stupca.

Pokrenite ovaj kôd pomoću tipke F5 ili ga možete pokrenuti ručno.

Stvari koje treba zapamtiti

  • Isprobajte različite kombinacije u odjeljku Operator da biste stekli znanje VBA AutoFiltera.
  • Ako niste sigurni što staviti, pokušajte upotrijebiti makro snimač.
  • Ako želite filtrirati tekstualne vrijednosti, morate ih navesti u dvostrukim navodnicima.
  • Upotrijebite izjavu WITH za primjenu više filtara stupaca.

Zanimljivi članci...