VBA automatikus szűrő

A VBA -ban létrehozhat AutoFilter cellatartomány vagy Excel -táblázat szűrése érdekében. Ebben az oktatóanyagban megtudhatja, hogyan kell létrehozni AutoFilter egy vagy több oszlophoz és több feltételhez.

Ha meg szeretné tanulni a speciális szűrő használatát a VBA -ban, kattintson ide: VBA speciális szűrő

Automatikus szűrő létrehozása a VBA -ban

Először is látni fogja, hogyan lehet csak létrehozni AutoFilter tartományban, így a felhasználó szűrheti az adatokat. A példákban felhasznált adatok az 1. képen láthatók:

1. kép. Adatok az AutoFilter példákhoz

Itt van a létrehozás kódja AutoFilter:

1 Sheet1.Range ("A1: E1"). AutoFilter

Annak érdekében, hogy engedélyezze AutoFilter, meg kell adnunk a tartomány fejlécét, esetünkben A1: E1, és a AutoFilter az objektum módszere Hatótávolság. Ennek eredményeként az adattartományunk aktiválta a szűrőket:

2. kép. Az automatikus szűrő engedélyezve van az adatokhoz

Automatikus szűrő mező- és kritériumparaméterekkel

A VBA lehetővé teszi egy bizonyos mező automatikus szűrését is bizonyos értékekkel.

Ehhez paramétereket kell használni Terület és Kritériumok1 a módszerről AutoFilter. Ebben a példában a harmadik oszlopot szeretnénk szűrni (Termék) számára A termék csak. Itt a kód:

12 Sheet1.Range ("A1: E1"). Automatikus szűrőmező: = 3, _1. kritérium: = "A termék"

Ban,-ben Terület paraméter, beállíthatja az oszlop számát a tartományban (nem Excelben), míg Kritériumok1 megadhatja a szűrni kívánt értéket. A kód végrehajtása után a táblázatunk így néz ki:

3. kép. Automatikus szűrő mezővel és feltételekkel

Amint láthatja, csak a sorokkal A termék a harmadik oszlopban az adattartományban jelennek meg.

Automatikus szűrő mező és több kritérium értékkel

Ha egy mezőt több értékkel szeretne szűrni, akkor a paramétert kell használnia Operátor a AutoFilter módszer. Több érték szűréséhez be kell állítania Operátor nak nek xlFilterValues és az összes értékét is Kritériumok egy tömbben. Ebben a példában szűrjük a Termék oszlop a A termék és B termék. Itt a példa a kódra:

123 Sheet1.Range ("A1: E1"). Automatikus szűrő mező: = 3, _1. kritérium: = tömb ("A termék", "B termék"), _Operátor: = xlFilterValues

Amikor végrehajtjuk a kódot, csak az A és a B termékeket tartalmazó sorokat kapjuk, amint az a 4. képen látható:

4. kép. Automatikus szűrő több kritériumértékkel

Automatikus szűrő adattartomány több kritériummal

Ha több feltételt tartalmazó mezőt szeretne szűrni, akkor használnia kell Kritériumok1 és Feltételek2 paramétereket, de a Kezelő xlAnd.

A következő példában az első oszlopot szűrjük (Dátum) a 2022. decemberi dátumokra. Ezért két kritériumunk van: 18. január 12 -én nagyobb és 18. 12. 31 -nél kisebb. Ez a kód:

1234 Sheet1.Range ("A1: E1"). Automatikus szűrőmező: = 1, _1. kritérium: = "> = 2018.01.12.", _Operátor: = xlÉs, _2. kritérium: = "<= 2018.12.31."

Amikor végrehajtjuk a kódot, láthatjuk, hogy csak a decemberi dátumok jelennek meg az adattartományban:

5. kép. Automatikus szűrő több kritériummal a mezőhöz

Az AutoFilter metódus kezelői paraméterei

A következő táblázatban. láthatja az összes lehetséges értékét Operátor az AutoFilter módszer paramétere és leírásuk:

Operátor Leírás
xlÉs Több kritériumot tartalmaz - 1. és 2. kritérium
xlOr Tartalmazza a több feltétel egyikét - 1. kritérium vagy 2. kritérium
xlTop10Items Szűr egy bizonyos számú legmagasabb rangú értéket (az 1. kritériumban megadott szám)
xlBottom10Itsems Szűr egy bizonyos számú legalacsonyabb rangú értéket (az 1. kritériumban megadott szám)
xlTop10Percent Szűri a legmagasabb rangú értékek egy bizonyos százalékát (% a Criteria1 -ben megadott)
xl Alsó10 százalék Szűri a legalacsonyabb rangú értékek egy bizonyos százalékát (% a Criteria1 -ben megadott)
xlFilterValues Több feltételértéket tartalmaz a tömb segítségével
xlFilterCellColor Szűri a cellákat a színekhez
xlFilterFontColor A betűszínek celláit szűri
xlFIlterIcon Szűri az ikonokat
xlFilterDynamic Dinamikus értékek szűrése

Segít a fejlesztés a helyszínen, megosztva az oldalt a barátaiddal

wave wave wave wave wave