Excel VBA: Cara Menapis dengan Pelbagai Kriteria dalam Tatasusunan (7 Cara)

  • Berkongsi Ini
Hugh West

Jika anda mencari cara untuk menapis dengan tatasusunan kriteria berbilang dalam Excel VBA , maka anda berada di tempat yang betul. Menapis set data yang besar berdasarkan berbilang kriteria boleh dipermudahkan dengan bantuan VBA kod daripada menggunakan ciri konvensional Excel.

Jadi, mari kita mulakan artikel utama kami.

Muat Turun Buku Kerja

Tapis dengan Berbilang Kriteria.xlsm

7 Cara Menapis dengan Berbilang Kriteria dalam Tatasusunan Menggunakan Excel VBA

Dalam set data berikut, kami mempunyai beberapa rekod markah yang sepadan dengan nama pelajar dan id mereka. Kami akan cuba menapis set data ini berdasarkan kriteria berbeza sebagai tatasusunan dengan menggunakan beberapa kod.

Kami telah menggunakan versi Microsoft Excel 365 di sini, anda boleh menggunakan mana-mana versi lain mengikut keselesaan anda.

Kaedah-1: Tapis dengan Berbilang Kriteria sebagai Teks dalam Tatasusunan

Di sini, kami akan cuba menapis set data berikut berdasarkan Nama Pelajar lajur untuk berbilang kriteria yang mengandungi rentetan Emily , Daniel dan Gabriel dalam tatasusunan.

Langkah-01 :

➤ Pergi ke Pembangun Tab >> Visual Basic Pilihan.

Kemudian, Visual Basic Editor akan dibuka.

➤ Pergi ke Sisipkan Tab >> Modul Pilihan.

Selepas itu, sebuah Modul akan menjadidibuat.

Langkah-02 :

➤ Tulis kod berikut

4292

Di sini, kami mengisytiharkan nama pengepala dalam julat B3:D3 di mana kami akan menggunakan penapis dan Field:=2 ialah nombor lajur julat ini berdasarkan mana kami akan melakukan proses penapisan ini.

Akhir sekali, kami telah menetapkan kriteria sebagai tatasusunan untuk mengisytiharkan berbilang nama pelajar seperti Emily , Daniel , dan Gabriel .

➤ Tekan F5 .

Kemudian, anda set data akan ditapis ke bawah untuk berbilang kriteria untuk menunjukkan nama pelajar dan Id dan Markah yang sepadan untuk pelajar Emily , Daniel dan Gabriel .

Baca Lagi: Tapis Berbilang Kriteria dalam Excel (4 Cara Yang Sesuai)

Kaedah-2: Tapis dengan Kriteria Berbilang Nombor dalam Tatasusunan Menggunakan Excel VBA

Di sini, kami akan menapis ke bawah set data berikut untuk id 101135 , 10 1137 dan 101138 dengan menggunakan nombor ini sebagai berbilang kriteria dalam tatasusunan.

Langkah :

➤ Ikuti Langkah-01 daripada Kaedah-1 .

➤ Tulis kod berikut

5554

Di sini, kami mengisytiharkan nama pengepala dalam julat B3:D3 di mana kami akan menggunakan penapis dan Field:=2 adalah nombor lajur julat ini berdasarkan mana kami akan melakukan penapisan iniproses.

Akhir sekali, kami telah menetapkan kriteria sebagai tatasusunan untuk mengisytiharkan berbilang id pelajar seperti 101135 , 101137 dan 101138 dan kami telah meletakkannya di dalam koma terbalik untuk menentukannya sebagai rentetan kerana AutoFilter akan berfungsi untuk tatasusunan rentetan sahaja.

➤ Tekan F5 .

Selepas itu, anda akan mendapat nama dan markah pelajar yang mempunyai id 101135 , 101137 dan 101138 .

Baca Lagi: VBA untuk Mendapatkan Nilai Unik daripada Lajur ke Array dalam Excel (3 Kriteria)

Kaedah-3: Menetapkan Berbilang Kriteria dalam Julat untuk Penggunaan sebagai Array

Di sini, kami telah menyenaraikan kriteria dalam lajur Senarai yang mengandungi id 101134 , 101135 dan 101136 berdasarkan mana kami akan melakukan proses penapisan kami.

Langkah :

➤ Ikuti Langkah-01 daripada Kaedah-1 .

➤ Tulis kod berikut

3635

Di sini , kami ada decl adalah Julat_ID , k sebagai Varian dan julat_ID adalah tatasusunan yang akan menyimpan berbilang kriteria dan k adalah kenaikan antara had bawah hingga had atas tatasusunan ini. Untuk mempunyai had bawah dan had atas, kami menggunakan Fungsi LBOUND dan fungsi UBOUND masing-masing.

Gelung FOR digunakan untuk menukar nilai selain daripada rentetandalam tatasusunan menjadi rentetan dengan bantuan fungsi CStr . Akhir sekali, kami telah menggunakan tatasusunan ini sebagai Kriteria1 .

➤ Tekan F5 .

Selepas itu, anda akan mendapat nama dan markah pelajar yang mempunyai id 101134 , 101135 dan 101136 .

Baca Lagi: Tapis Lajur Berbeza mengikut Berbilang Kriteria dalam Excel VBA

Bacaan Serupa

  • Cara Menapis Nilai Unik dalam Excel (8 Cara Mudah)
  • Lakukan Penapis Tersuai dalam Excel (5 Cara)
  • Kira Purata Tatasusunan dengan VBA (Makro, UDF dan Borang Pengguna)
  • Pintasan untuk Penapis Excel (3 Penggunaan Pantas dengan Contoh)

Kaedah-4: Menggunakan Fungsi SPLIT dan JOIN untuk Mencipta Tatasusunan dengan Berbilang Kriteria

Di sini, kami akan menggunakan senarai berikut dalam Senarai lajur sebagai tatasusunan dan untuk menapis set data dengan betul kami juga akan menggunakan Fungsi SPLIT , Fungsi JOIN dan Fungsi TRANPOSE dalam Kod VBA .

Langkah :

➤ Fol rendah Langkah-01 daripada Kaedah-1 .

➤ Tulis kod berikut

1894

Di sini, TRANSPOSE akan menukar tatasusunan 2D ke dalam tatasusunan 1D jika tidak AutoFilter tidak akan berfungsi, SERTAI akan menggabungkan setiap nilai ke dalam tatasusunan rentetan, dan akhirnya, SPLIT akan memecahkan setiap rentetan untuk memberikan inputmereka secara berasingan sebagai kriteria untuk menapis set data.

➤ Tekan F5 .

Akhir sekali, anda akan mendapat nama dan tanda pelajar yang mempunyai id 101134 , 101135 dan 101136 .

Baca Lagi: Cara Memisahkan Rentetan kepada Tatasusunan dalam VBA (3 Cara)

Kaedah-5 : Tapis dengan Berbilang Kriteria dalam Gelung untuk Tatasusunan dengan VBA

Dalam bahagian ini, kami akan menapis ke bawah set data berikut bergantung pada lajur Id Pelajar untuk berbilang kriteria seperti yang disenaraikan dalam lajur Senarai .

Langkah :

➤ Ikuti Langkah- 01 daripada Kaedah-1 .

➤ Tulis kod berikut

2950

Di sini, kami telah mengisytiharkan k sebagai Integer , ID_range(100) sebagai String di mana ID_range adalah tatasusunan yang akan menyimpan sehingga 100 nilai. Untuk menentukan nilai bagi tatasusunan ini di sini kami telah menggunakan gelung FOR untuk k daripada 4 hingga 6 sebagai nombor baris bagi Senarai lajur dan F ialah nama lajur.

Akhir sekali, kami telah menggunakan tatasusunan ini sebagai Kriteria1 untuk AutoFilter .

➤ Tekan F5 .

Akhirnya, anda akan mendapat nama dan markah pelajar yang mempunyai id 101134 , 101135 dan 101136 .

Baca Lagi: Tapis Berbilang Kriteria dalam Excel dengan VBA (Kedua-dua DAN dan ATAUJenis)

Kaedah-6: Menggunakan Julat Dinamakan untuk Berbilang Kriteria

Di sini, kami telah menyenaraikan beberapa nama pelajar dalam lajur Senarai dan menamakan ini julat sebagai Pelajar . Menggunakan julat bernama ini, kami akan menentukan tatasusunan yang akan mengandungi berbilang kriteria untuk ciri AutoFilter .

Langkah :

➤ Ikuti Langkah-01 daripada Kaedah-1 .

➤ Tulis kod berikut

2428

Di sini, kami telah mengisytiharkan Julat_Pelajar , k sebagai Varian dan menggunakan fungsi TRANSPOSE untuk menukar tatasusunan 2D julat yang dinamakan Pelajar ke dalam tatasusunan 1D dan kemudian simpannya dalam Julat_Pelajar . Kemudian, ia digunakan sebagai Kriteria1 untuk kaedah AutoFilter .

➤ Tekan F5 .

Kemudian, anda akan menapis set data untuk berbilang kriteria untuk menunjukkan nama pelajar dan Id dan Markah <10 yang sepadan> untuk pelajar Jefferson , Emily dan Sara .

Kandungan Berkaitan: VBA ke Transpose Array dalam Excel (3 Kaedah)

Kaedah-7: Tapis Jadual dengan Berbilang Kriteria dalam Tatasusunan

Di sini, kami mempunyai Jadual berikut yang namanya Jadual1 dan menggunakan Excel VBA kami akan cuba menapis jadual ini berdasarkan nama Emily , Daniel dan Gabriel sebagai kriteria berbilang dalam tatasusunan.

Langkah :

➤ Ikuti Langkah-01 daripada Kaedah-1 .

➤ Tulis kod berikut

3017

Di sini, ListObjects(“Jadual1”) digunakan untuk mentakrifkan jadual Jadual1 , Field:=2 untuk menyediakan lajur kedua julat ini sebagai asas proses penapisan dan akhirnya kami telah menentukan tatasusunan mengandungi berbilang nama untuk Kriteria1 .

➤ Tekan F5 .

Akhirnya, anda akan mempunyai set data ditapis untuk berbilang kriteria untuk menunjukkan nama pelajar dan Id mereka yang sepadan dan Markah untuk pelajar Emily , Daniel dan Gabriel .

Baca Lagi: Excel VBA: Jadual Penapis Berdasarkan Nilai Sel (6 Kaedah Mudah)

Bahagian Amalan

Untuk melakukan latihan dengan sendiri, kami telah menyediakan bahagian Amalan seperti di bawah dalam helaian bernama Amalan . Sila lakukan sendiri.

Kesimpulan

Dalam artikel ini, kami cuba membincangkan cara untuk menapis dengan berbilang kriteria sebagai tatasusunan menggunakan Excel VBA dengan mudah. Harap anda akan mendapati ia berguna. Jika anda mempunyai sebarang cadangan atau soalan, sila kongsikannya di bahagian komen.

Hugh West ialah jurulatih dan penganalisis Excel yang sangat berpengalaman dengan lebih 10 tahun pengalaman dalam industri. Beliau memiliki Ijazah Sarjana Muda Perakaunan dan Kewangan serta Ijazah Sarjana dalam Pentadbiran Perniagaan. Hugh mempunyai minat untuk mengajar dan telah membangunkan pendekatan pengajaran yang unik yang mudah diikuti dan difahami. Pengetahuan pakar Excel beliau telah membantu beribu-ribu pelajar dan profesional di seluruh dunia meningkatkan kemahiran mereka dan cemerlang dalam kerjaya mereka. Melalui blognya, Hugh berkongsi pengetahuannya dengan dunia, menawarkan tutorial Excel percuma dan latihan dalam talian untuk membantu individu dan perniagaan mencapai potensi penuh mereka.