VBA AutoFilter - Kuinka käyttää VBA AutoFilter -kriteereitä tietojen suodattamiseen?

Sisällysluettelo

Excel VBA -autosuodatin

Automaattisuodatinta VBA: ssa käytetään lausekkeena ja sen syntaksia seuraavasti Lauseke. Automaattinen suodatin (kenttä, kriteerit 1, operaattori, ehdot 2, avattava valikko) kaikki argumentit ovat valinnaisia. Suodatin on hyödyllinen suodatettaessa tietyt tiedot valtavasta datasta.

Oletetaan, että olet säännöllinen käyttäjä, niin Excel-suodattimet eivät ole outo asia sinulle. Osa laskentataulukossa käytetyistä työkaluista on integroitu myös VBA: han, ja automaattinen suodatinvaihtoehto on yksi tärkeimmistä VBA: ssa käytettävissä olevista työkaluista. Kuten me kaikki tiedämme, excel-suodatin on saatavana data-välilehdestä.

Tämän suodatinvaihtoehdon avulla voimme pelata tietoja. Jos olet tekemisissä vähäisen tietomäärän kanssa ja jos uskot, että VBA-automaattisuodatinvaihtoehtoa ei todellakaan vaadita, voit jatkaa laskentataulukon suodattimen käyttöä.

Jos sinulla on valtava määrä dataa, voit käyttää automaattista suodatinta vaihtoehtoa prosessin yksinkertaistamiseksi.

Automaattisen suodattimen toiminnon syntaksi

Excel VBA: n automaattista suodatinta voidaan käyttää alueobjektin kanssa. Muiden toimintojemme tavoin myös tällä on oma syntaksinsa.

  • Alue: Alue on yksinkertaisesti sillä alueella, johon haluat käyttää suodatinta.
  • Kenttä: Kenttä tarkoittaa, mistä valitsemasi alueen sarakkeesta haluat suodattaa tiedot. Sarake lasketaan vasemmalta oikealle.

Esimerkiksi, jos alueesi on A1: stä D100: een ja haluat käyttää suodatinta D-sarakkeelle, kentän numero on 4, koska D on valitulla alueella neljäs sarake.

Kriteerit 1: Olet valinnut kentästä, mitä haluat suodattaa.

  • Operaattori: Jos haluat käyttää useampaa kuin yhtä kriteeriä tietojen suodattamiseen, meidän on käytettävä operaattorisymboleja. Jotkut operaattorikoodit ovat alla.

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

Kriteerit 2: Mikä on toinen asia, jonka haluat suodattaa kriteerien 1 kanssa?

  • Näkyvä pudotus alas: Haluatko näyttää suodattimen pudotuskuvakkeen suodatetussa sarakkeessa. Jos haluat näyttää arvon TOSI, argumentti on argumentti, ellei FALSE.

Kuinka käyttää suodatinta VBA AutoFilter -sovelluksella? (esimerkin kanssa)

Oletetaan, että työskentelet alla olevien tietojen alla.

Nyt käytämme suodatinta käyttämällä VBA-koodia. Ota suodatin käyttöön noudattamalla seuraavia ohjeita.

Vaihe 1: Aloita alimenettely antamalla makrolle nimi.

Koodi:

Ala Automaattinen suodatin_esimerkki1 () Lopeta ali

Vaihe 2: Ensimmäinen asia on, millä alueella meidän on käytettävä suodatinta. Tässä tapauksessa meidän on sovellettava aluetta välillä A1 - E25.

Koodi:

Automaattisen suodattimen_esimerkki1 () alue ("A1: E25") Lopeta ala

Vaihe 3: Kun alue on valittu, käytä nyt automaattisen suodattimen vaihtoehtoa.

Koodi:

Automaattisen suodattimen_esimerkki1 () alue ("A1: E25")

Emme valitse arvoja automaattisella suodattimella. Pikemminkin käytämme suodatinta vain tässä vaiheessa.

Suorita koodi F5-näppäimellä tai manuaalisesti, se lisää suodattimen valitulle alueelle.

Joten se on soveltanut suodatinta tietoihin. Nyt näemme, miten tiedot suodatetaan.

Esimerkki # 1 - Suodata tiedot käyttämällä automaattista suodatinta

Harkitse samoja tietoja edellisestä esimerkistä. Nyt meidän on suodatettava osasto “Talous” osastosarakkeesta.

Vaihe 1: Kun suodatin on otettu käyttöön, ensimmäisenä argumenttina on mainita, mistä sarakkeesta suodatamme tietoja. Tässä tapauksessa meidän on suodatettava tiedot osasto-sarakkeesta, joten sarakkeen numero, jos 5.

Koodi:

Automaattisen suodattimen_esimerkki1 () alue ("A1: E25"). Automaattisen suodattimen kenttä: = 5, loppuosa

Vaihe 2: Kriteerit 1 on vain mitä haluamme suodatin 5 : nnen pylvään. Joten meidän on suodatettava pois "Rahoitus".

Koodi:

Ala Automaattinen suodatin_esimerkki1 () -alue ("A1: E25"). Automaattinen suodatin -kenttä: = 5, Kriteerit1: = "Rahoitus" Loppuosa

Joten kaikki, suorita tämä koodi manuaalisesti tai F5-avaimen kautta, se suodattaa luettelosta vain ”Talous”.

Esimerkki # 2 - AutoFilterin käyttäjä

Olemme nähneet, kuinka yksittäinen arvo suodatetaan. Nyt näemme kuinka suodattaa useita elementtejä. Oletetaan, että yhdessä "Talous" -palvelun kanssa haluat suodattaa myös "Myynti" -osaston, jotta voimme tehdä sen käyttämällä Operaattoreita.

Vaihe 1: Kun olet soveltanut ensimmäisiä ehtoja seuraavassa argumentissa, valitse operaattoriksi "xlOr".

Koodi:

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:

Automaattisen suodattimen_esimerkki4 (), jonka alue ("A1: E25") .AutoFilter-kenttä: = 5, Kriteerit1: = "Rahoitus" .Autofilter-kenttä: = 2, Kriteerit1: = "> 25000", Operaattori: = xlAnd, Kriteerit2: = " <40000 "Loppu loppuosalla

Tämä suodattaa kaksi saraketta.

Suorita tämä koodi F5-näppäimellä tai voit suorittaa sen manuaalisesti.

Muistettavaa

  • Kokeile erilaisia ​​yhdistelmiä Operator-kohdassa saadaksesi tietoa VBA AutoFilteristä.
  • Jos et ole varma, mitä laittaa, kokeile makrotallenninta.
  • Jos haluat suodattaa pois tekstiarvot, sinun on annettava ne lainausmerkeissä.
  • Käytä WITH-käskyä, jos haluat käyttää useampaa kuin yhtä sarakesuodatinta.

Mielenkiintoisia artikkeleita...