Kako uporabiti in izbrisati filter iz podatkov s pomočjo VBA?

Excel VBA filter

Orodje VBA Filter se uporablja za razvrščanje ali pridobivanje določenih želenih podatkov; funkcija samodejnega filtra se uporablja kot funkcija delovnega lista, vendar ima ta funkcija druge argumente, ki so neobvezni in edini obvezni argument je izraz, ki pokriva obseg, na primer delovni listi (“Sheet1”). Obseg (“A1”). Samodejni filtriranje bo filter uporabil v prvem stolpcu.

Filter v VBA deluje enako kot na delovnem listu. Različno je le, da lahko avtomatiziramo rutinsko nalogo filtriranja podatkov s pomočjo kodiranja.

AutoFilter je funkcija, ki vključuje veliko sintaksnih vrednosti. Spodaj so navedeni parametri funkcije AutoFilter.

  • Obseg je prva stvar, ki jo moramo ponuditi za uporabo možnosti »AutoFilter«. To je preprosto za kateri obseg celic moramo uporabiti filter, na primer Range ("A1: D50").
  • Polje je prvi argument v funkciji. Ko je obseg celic izbran skozi objekt VBA RANGE, moramo omeniti, za kateri stolpec obsega želimo uporabiti filter.
  • Kriterij 1 ni nič drugega kot v izbranem polju, katero vrednost želite filtrirati.
  • Operator se uporablja v primeru, če želite uporabiti argument Merila 2 . Pri tej možnosti lahko uporabimo spodnje možnosti.
    xlAnd, xlOr, xlBottom10Items, xlTop10Items, xlTop10Percent, xlBottom10Percent, xlFilterCellColor, xlFilterDynamic, xlFilterFontColor, xlFilterIcon, xlFilterValues
  • Vidno spustno je, ali naj se v stolpcu, uporabljenem za filter, prikaže simbol filtra ali ne. Če želite prikazati, lahko argument navedete kot TRUE ali FALSE.

Primeri za filtriranje podatkov z uporabo VBA

Primer # 1 - Uporabi ali odstrani filter za podatke

Če želite uporabiti možnost filtra za podatke, lahko to možnost izklopimo in vklopimo. Na primer, poglejte spodnjo sliko s podatki.

1. korak: Navedite obseg podatkov

Če želite najprej aktivirati možnost filtra, moramo navesti, kakšen je naš obseg podatkov. Na zgornji sliki so naši podatki razpršeni od A1 do G31, zato podajte to območje z uporabo predmeta RANGE.

Koda:

Sub Filter_Example () Obseg ("A1: G31") Konec Sub
2. korak: Nato odprite funkcijo AutoFilter

Zdaj odprite funkcijo samodejnega filtra za ta obseg.

Koda:

Podfilter_Primer () Obseg ("A1: G31"). Konec samodejnega filtra Sub
3. korak: Zaženite kodo, da omogočite filter

To je vse. Zaženite to kodo, da omogočite samodejni filter.

Ta koda deluje kot preklop in če filter ni uporabljen, bo veljal. Če je že uporabljeno, ga bo odstranilo.

Primer # 2 - Filtriranje določenih vrednosti

Zdaj bomo videli, kako uporabiti parametre možnosti AutoFilter. Vzemite enake podatke kot zgoraj. Na primer, zdaj moramo filtrirati vsa moška imena spolov.

1. korak: Izberite obseg in odprite funkcijo samodejnega filtra
2. korak: Nato izberite polje

V prvem argumentu funkcije, tj. Field, moramo omeniti sklic na stolpec, ki bi ga radi filtrirali. V tem primeru moramo filtrirati samo kandidate »Moški«, to je stolpec »C«, zato je številka stolpca 3.

3. korak: Zdaj omenite merila

Zdaj za to dobavljeno polje moramo omeniti merila 1, tj. Katero vrednost moramo filtrirati v omenjenem polju. Iz tega stolpca moramo filtrirati »Moški«.

Koda:

Podfilter_Primer () Obseg ("A1: G31"). Polje samodejnega filtra: = 3, Kriteriji1: = "Moški" Konec Sub
4. korak: in zaženite kodo

Ok, to je vse. Ta koda bo zdaj filtrirala samo »moške« kandidate.

Primer # 3 - Uporaba argumenta OPERATOR

When you want to filter out more than one value from the column, we need to use the “Operator” argument. For example, from the column “Major,” we need to filter only “Math & Politics,” then we need to use this argument.

Step 1: Select Range and Autofilter Field

First, supply the Range of cells and fields.

Code:

Sub Filter_Example() Range("A1:G31").AutoFilter Field:=5, End Sub
Step 2: Enter Criteria 1 as Math

For the mentioned filed, we need to supply Criteria 1 as “Math.”

Code:

Sub Filter_Example() Range("A1:G31").AutoFilter Field:=5, Criteria1:="Math", End Sub
Step 3: Use Operator xl

Since we need to filter one more value from the same column or field, use the operator symbol as “xlOr.”

Code:

Sub Filter_Example() Range("A1:G31").AutoFilter Field:=5, Criteria1:="Math", Operator:=xlOr End Sub
Step 4: Enter Criteria 2 as Politics

And for Criteria 2 argument mention the value as “Politics.”

Code:

Sub Filter_Example() Range("A1:G31").AutoFilter Field:=5, Criteria1:="Math", Operator:=xlOr, Criteria2:="Politics" End Sub

This will filter out both “Math” & “Politics” from column “Major.”

Example #4 - Filter Numbers with Operator Symbols

For example, if you want to filter numbers with, then we can filter a specific number as well as numbers above, below, or between specific values and range of values.

For example, from the age column, if you want to filter persons aged more than 30, then we can write the code like below.

Code:

Sub Filter_Example() Range("A1:G31").AutoFilter Field:=7, Criteria1:=">30" End Sub

This will filter all the values that are more than 30.

Now, if you want to filter values between 21 and 31, then we can use the below code.

Code:

Sub Filter_Example() Range("A1:G31").AutoFilter Field:=7, Criteria1:=">21", Operator:=xlAnd, Criteria2:="<31" End Sub

This will filter persons aged between 21 and 30.

Example #5 - Apply Filter for More Than One Column

If you want to filter values from more than one column criteria, then we need to use a slightly different technique.

If you want to filter “Student Status” as “Graduate” and “Country” as “US,” then first, we need to supply the RANGE of cells under the “WITH” statement.

Code:

Sub Filter_Example() With Range("A1:G31") End With End Sub

Zdaj v stavku WITH navedite prva merila, ki jih je treba filtrirati.

Koda:

Sub Filter_Example () z obsegom ("A1: G31"). Polje AutoFilter: = 4, Criteria1: = "Graduate" End with End Sub

Zdaj v naslednji vrstici naredite enako za »Država«, tako da spremenite »Polje« kot 6 in Merila kot »ZDA«.

Koda:

Podfilter_Primer () z obsegom ("A1: G31"). Polje AutoFilter: = 4, Kriteriji1: = "Diplomirano". Polje AutoFilter: = 6, Kriteriji1: = "US" Konec s koncem Sub

Zdaj bo to filtriralo "Diplomant" samo za državo "ZDA".

Stvari, ki si jih je treba zapomniti

  • Prva stvar bo uporabljena samo za omenjeni obseg filtra celic.
  • Polje ni nič, v katerem stolpcu želite filtrirati podatke.
  • Če filtrirate vrednosti iz več kot enega stolpca, uporabite z.

Zanimive Članki...