Excel VBA: Kako filtrirati s više kriterija u nizu (7 načina)

  • Podijeli Ovo
Hugh West

Ako tražite načine za filtriranje s nizom više kriterija u programu Excel VBA , onda ste na pravom mjestu. Filtriranje velikog skupa podataka na temelju višestrukih kriterija može se olakšati uz pomoć VBA kodova umjesto korištenja konvencionalne značajke programa Excel.

Dakle, započnimo naš glavni članak.

Preuzmite radnu knjigu

Filtriraj s višestrukim kriterijima.xlsm

7 načina za filtriranje s višestrukim kriterijima u nizu pomoću programa Excel VBA

U sljedećem skupu podataka imamo neke zapise o ocjenama koje odgovaraju imenima učenika i njihovim ID-ovima. Pokušat ćemo filtrirati ovaj skup podataka na temelju različitih kriterija kao polje pomoću nekih kodova.

Ovdje smo koristili verziju Microsoft Excel 365 , vi možete koristiti bilo koje druge verzije prema vašoj želji.

Metoda-1: Filtrirajte s višestrukim kriterijima kao tekstovi u nizu

Ovdje ćemo pokušati filtrirati sljedeći skup podataka na temelju Stupac ime učenika za više kriterija koji sadrže nizove Emily , Daniel i Gabriel u nizu.

Korak-01 :

➤ Idite na Developer Kartica >> Visual Basic Opcija.

Tada će se otvoriti Visual Basic Editor .

➤ Idite na Insert Tab >> Module Option.

Nakon toga, Module bit ćestvoreno.

Korak-02 :

➤ Napišite sljedeći kod

3351

Ovdje smo deklarirali imena zaglavlja u rasponu B3:D3 na koji ćemo primijeniti filtar i Polje:=2 je broj stupca ovog raspona na temelju kojeg ćemo izvršiti ovaj proces filtriranja.

Konačno, postavili smo kriterije kao niz za deklariranje imena više učenika kao što su Emily , Daniel , i Gabriel .

➤ Pritisnite F5 .

Onda, skup podataka će biti filtriran prema više kriterija kako bi se prikazala imena učenika i njihovi odgovarajući ID-ovi i Ocjene za učenike Emily , Daniel i Gabriel .

Pročitajte više: Filtriranje višestrukih kriterija u programu Excel (4 prikladna načina)

Metoda-2: Filtriranje s višestrukim brojčanim kriterijima u nizu pomoću Excel VBA

Ovdje ćemo filtrirati sljedeći skup podataka za ID-ove 101135 , 10 1137 i 101138 upotrebom ovih brojeva kao višestrukih kriterija u nizu.

Koraci :

➤ Slijedite Korak-01 od Metode-1 .

➤ Napišite sljedeći kod

8744

Ovdje smo deklarirali nazive zaglavlja u rasponu B3:D3 na koji ćemo primijeniti filtar, a Field:=2 je broj stupca ovog raspona na temelju kojeg smo izvršit će ovo filtriranjeproces.

Konačno, postavili smo kriterije kao niz za deklariranje ID-ova više učenika kao što su 101135 , 101137 i 101138 i stavili smo ih unutar navodnih zareza kako bismo ih naveli kao nizove jer će AutoFilter raditi samo za niz nizova.

➤ Pritisnite F5 .

Nakon toga ćete dobiti imena i ocjene učenika koji imaju ID 101135 , 101137 i 101138 .

Pročitajte više: VBA za dobivanje jedinstvenih vrijednosti iz stupca u polje u Excelu (3 kriterija)

Metoda-3: Postavljanje više kriterija u rasponu za korištenje kao polje

Ovdje smo naveli kriterije u stupcu Popis koji sadrži ID-ove 101134 , 101135 i 101136 na temelju kojih ćemo izvršiti proces filtriranja.

Koraci :

➤ Slijedite Korak-01 od Metode-1 .

➤ Napišite sljedeći kod

4834

Ovdje , imamo dekl ared ID_range , k kao Varijanta i ID_range je niz koji će pohraniti više kriterija, a k je prirast u rasponu od donje granice do gornje granice ovog niza. Za donju i gornju granicu upotrijebili smo LBOUND funkciju odnosno UBOUND funkciju .

FOR petlja koristi se za pretvaranje vrijednosti koje nisu nizoviu nizu u nizove uz pomoć CStr funkcije . Konačno, upotrijebili smo ovaj niz kao Kriterij1 .

➤ Pritisnite F5 .

Nakon toga, dobit će imena i ocjene učenika koji imaju ID 101134 , 101135 i 101136 .

Pročitajte više: Filtrirajte različite stupce prema više kriterija u programu Excel VBA

Slična čitanja

  • Kako filtrirati jedinstvene vrijednosti u Excelu (8 jednostavnih načina)
  • Izvršite prilagođeni filtar u Excelu (5 Načini)
  • Izračunajte prosjek niza pomoću VBA (makro, UDF i korisnički obrazac)
  • Prečac za Excel filtar (3 brze upotrebe s primjerima)

Metoda-4: Korištenje SPLIT i JOIN funkcija za stvaranje niza s više kriterija

Ovdje ćemo upotrijebiti sljedeći popis u Popisu stupac kao niz, a za pravilno filtriranje skupa podataka također ćemo koristiti SPLIT funkciju , JOIN funkciju i TRANSPOSE funkciju u VBA kod.

Koraci :

➤ Fol low Step-01 of Method-1 .

➤ Napišite sljedeći kod

8525

Ovdje će TRANSPOSE konvertirati 2D niz u 1D niz inače AutoFilter neće raditi, JOIN pridružit će svaku vrijednost u niz nizova, i konačno, SPLIT će rastaviti svaki niz kako bi dao ulazzasebno ih kao kriterije za filtriranje skupa podataka.

➤ Pritisnite F5 .

Na kraju ćete dobiti imena i oznake studenti koji imaju ID 101134 , 101135 i 101136 .

Pročitajte više: Kako podijeliti niz u niz u VBA (3 načina)

Metoda-5 : Filtriranje s višestrukim kriterijima u petlji za niz s VBA

U ovom ćemo odjeljku filtrirati sljedeći skup podataka ovisno o stupcu ID učenika za više kriteriji navedeni u stupcu Popis .

Koraci :

➤ Slijedite Korak- 01 od Metode-1 .

➤ Napišite sljedeći kod

6100

Ovdje smo k deklarirali kao Integer , ID_range(100) kao Niz gdje je ID_range niz koji će pohraniti do 100 vrijednosti. Za određivanje vrijednosti za ovaj niz ovdje koristili smo FOR petlju za k od 4 do 6 kao brojeve redaka List stupac i F je naziv stupca.

Konačno, upotrijebili smo ovaj niz kao Kriterij1 za AutoFilter .

➤ Pritisnite F5 .

Na kraju ćete dobiti imena i ocjene učenika koji imaju ID 101134 , 101135 i 101136 .

Pročitajte više: Filtrirajte više kriterija u Excelu s VBA (I i ILIVrste)

Metoda-6: Korištenje imenovanog raspona za više kriterija

Ovdje smo naveli neka imena učenika u stupcu Popis i ovo imenovali rang kao Student . Pomoću ovog imenovanog raspona definirat ćemo niz koji će sadržavati više kriterija za značajku AutoFilter .

Koraci :

➤ Slijedite Korak-01 od Metode-1 .

➤ Napišite sljedeći kod

7850

Ovdje smo objavili Student_range , k kao Varijanta , i koristi TRANSPOSE funkciju za pretvaranje 2D niza imenovanog raspona Student u 1D niz i zatim ga pohraniti u Student_range . Zatim se koristi kao Kriterij1 za AutoFilter metodu.

➤ Pritisnite F5 .

Tada ćete skup podataka filtrirati prema više kriterija kako biste prikazali imena učenika i njihove odgovarajuće ID i Ocjene za učenike Jefferson , Emily i Sara .

Povezani sadržaj: VBA za prijenos polja u Excelu (3 metode)

Metoda-7: Filtrirajte tablicu s više kriterija u nizu

Ovdje imamo sljedeću Tablicu čije je ime Table1 i koristi Excel VBA pokušat ćemo filtrirati ovu tablicu na temelju imena Emily , Daniel i Gabriel kao više kriterija u nizu.

Koraci :

➤ Slijedite Korak-01 od Metode-1 .

➤ Napišite sljedeći kod

6626

Ovdje, ListObjects(“Table1”) se koristi za definiranje tablice Table1 , Field:=2 za postavljanje drugog stupca ovog raspona kao baze procesa filtriranja i konačno smo definirali niz koji sadrži više naziva za Kriterije1 .

➤ Pritisnite F5 .

Na kraju ćete imati skup podataka filtrirano prema dolje za više kriterija za prikaz imena učenika i njihovih odgovarajućih ID-ova i Ocjena za učenike Emily , Daniel i Gabriel .

Pročitajte više: Excel VBA: Filtrirajte tablicu na temelju vrijednosti ćelije (6 jednostavnih metoda)

Odjeljak za vježbu

Za vježbanje sami smo osigurali odjeljak Vježbanje kao ispod na listu pod nazivom Vježbanje . Učinite to sami.

Zaključak

U ovom smo članku pokušali pokriti načine filtriranja s više kriterija kao niz pomoću programa Excel VBA lako. Nadam se da će vam biti od koristi. Ako imate prijedloge ili pitanja, slobodno ih podijelite u odjeljku za komentare.

Hugh West vrlo je iskusan Excel trener i analitičar s više od 10 godina iskustva u industriji. Diplomirao je računovodstvo i financije te magistrirao poslovno upravljanje. Hugh ima strast za podučavanjem i razvio je jedinstveni pristup podučavanju koji je lako pratiti i razumjeti. Njegovo stručno poznavanje programa Excel pomoglo je tisućama studenata i profesionalaca diljem svijeta da poboljšaju svoje vještine i postignu uspjeh u karijeri. Putem svog bloga, Hugh dijeli svoje znanje sa svijetom, nudeći besplatne vodiče za Excel i online obuku kako bi pomogao pojedincima i tvrtkama da dostignu svoj puni potencijal.