VBA AutoFilter - Kā izmantot VBA AutoFilter kritērijus datu filtrēšanai?

Excel VBA automātiskais filtrs

Automātiskais filtrs VBA tiek izmantots kā izteiksme, un tā sintakse ir šāda izteiksme. Automātiskais filtrs (lauks, 1. kritērijs, operators, 2. kritērijs, nolaižamā izvēlne) visi argumenti nav obligāti. Filtrs ir noderīgs, filtrējot konkrētos datus no milzīgajiem datiem.

Pieņemsim, ka esat parasts lietotājs, tad Excel filtri jums nav dīvaina lieta. Daži no darblapā izmantotajiem rīkiem ir integrēti arī VBA, un automātiskā filtra opcija ir viens no svarīgākajiem VBA pieejamajiem rīkiem. Kā mēs visi zinām, Excel filtrs ir pieejams cilnē dati.

Izmantojot šo filtra opciju, mēs varam spēlēt ar datiem. Ja jums ir darīšana ar minimālu datu apjomu un ja jūs domājat, ka VBA automātiskā filtra opcija patiešām nav nepieciešama, varat turpināt izmantot darblapas filtra opciju.

Ja jums ir darīšana ar milzīgu datu daudzumu, tad procesa plūsmas vienkāršošanai varat izmantot opciju Automātiskais filtrs.

AutoFilter funkcijas sintakse

Automātisko filtru programmā Excel VBA var izmantot ar diapazona objektu. Tāpat kā citas mūsu funkcijas, arī šai ir sava sintakse.

  • Diapazons: Diapazons ir vienkārši tajā diapazonā, kurā vēlaties izmantot filtru.
  • Lauks: lauks nozīmē, kurā diapazona kolonnā esat atlasījis filtrēšanas datus. Kolonna tiks skaitīta no kreisās uz labo.

Piemēram, ja jūsu diapazons ir no A1 līdz D100 un vēlaties lietot filtru kolonnai D, lauka numurs ir 4, jo atlasītajā diapazonā D ir ceturtā kolonna.

1. kritērijs: laukā esat atlasījis filtrējamo.

  • Operators: Ja datu filtrēšanai vēlaties piemērot vairākus kritērijus, mums jāizmanto operatora simboli. Daži no operatora kodiem ir šādi.

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

2. kritērijs: kāda ir otrā lieta, kuru vēlaties filtrēt kopā ar 1. kritēriju?

  • Redzama nolaižamā izvēlne: vai filtrētajā kolonnā vēlaties parādīt filtru Fop down ikonu. Ja vēlaties parādīt TRUE, arguments ir arguments, ja ne FALSE.

Kā lietot filtru, izmantojot VBA AutoFilter? (ar piemēru)

Pieņemsim, ka zemāk ir dati, ar kuriem strādājat.

Tagad, izmantojot VBA kodu, mēs lietosim filtru. Lai lietotu filtru, veiciet tālāk norādītās darbības.

1. darbība: sāciet apakšprocedūru, piešķirot makro nosaukumu.

Kods:

Automātiskā filtra_piemērs1 () beigu apakšnodaļa

2. solis: Pirmais ir tas, kādā diapazonā mums jāpielieto filtrs. Šajā gadījumā mums jāpiemēro diapazons no A1 līdz E25.

Kods:

Automātiskā filtra_piemērs1 () diapazons ("A1: E25") Apakšdaļa

3. solis: Kad diapazons ir atlasīts, tagad izmantojiet automātiskā filtra opciju.

Kods:

Automātiskā filtra_piemērs1 () diapazons ("A1: E25"). Automātiskā filtra beigu apakšgrupa

Mēs neizvēlamies nevienu vērtību, izmantojot automātisko filtru. Drīzāk mēs šajā brīdī vienkārši lietojam filtru.

Palaidiet kodu, izmantojot F5 taustiņu, vai manuāli, tas ievietos filtru atlasītajam diapazonam.

Tātad tas ir lietojis filtru datiem. Tagad mēs redzēsim, kā filtrēt datus.

1. piemērs - filtrējiet datus, izmantojot automātisko filtru

Apsveriet tos pašus datus no iepriekš minētā piemēra. Tagad mums ir jāfiltrē nodaļa “Finanses” no nodaļas slejas.

1. solis: Pēc filtra izmantošanas pirmais arguments ir pieminēt, no kuras kolonnas mēs filtrējam datus. Šajā gadījumā mums jāfiltrē dati no kolonnas Departaments, tāpēc kolonnas numurs, ja 5.

Kods:

Sub AutoFilter_Example1 () diapazons ("A1: E25"). AutoFilter lauks: = 5, End Sub

Step 2: Kritēriji 1 nav nekas, bet tas, ko mēs vēlamies, lai filtru no 5 th kolonnas. Tāpēc mums ir jāfiltrē “Finanses”.

Kods:

Automātiskā filtra_piemērs1 () diapazons ("A1: E25"). Automātiskā filtra lauks: = 5, 1. kritērijs: = "Finanses" beigu apakšdaļa

Tas ir viss, palaidiet šo kodu manuāli vai izmantojot taustiņu F5, tas no saraksta filtrēs tikai “Finanses”.

2. piemērs - operators automātiskajā filtrā

Mēs esam redzējuši, kā filtrēt vienu vērtību. Tagad mēs redzēsim, kā filtrēt vairākus elementus. Pieņemsim, ka kopā ar “Finance” vēlaties filtrēt arī “Sales” nodaļu, lai mēs to varētu izdarīt, izmantojot Operators.

1. solis: Pēc pirmo kritēriju piemērošanas nākamajā argumentā atlasiet operatoru kā “xlOr”.

Kods:

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 () ar diapazonu ("A1: E25"). Lauks AutoFilter: = 5, Criteria1: = "Finance". Lauks AutoFilter: = 2, Criteria1: = "> 25000", Operator: = xlAnd, Criteria2: = " <40000 "Beigas ar beigu apakšdaļu

Tas filtrēs divas kolonnas.

Palaidiet šo kodu, izmantojot F5 taustiņu, vai arī varat palaist manuāli.

Atceramās lietas

  • Izmēģiniet dažādas kombinācijas sadaļā Operators, lai iegūtu zināšanas par VBA AutoFilter.
  • Ja neesat pārliecināts, ko ievietot, mēģiniet izmantot makro reģistratoru.
  • Ja vēlaties filtrēt teksta vērtības, tās jānorāda divkāršās pēdiņās.
  • Izmantojiet WITH paziņojumu, lai lietotu vairāk nekā vienu kolonnu filtru.

Interesanti raksti...