Kod VBA untuk Menapis Data dalam Excel (8 Contoh)

  • Berkongsi Ini
Hugh West

Excel Isih & Perintah penapis mempunyai julat terhad kepada Tapis data . Tetapi menggunakan VBA anda boleh Menapis data dalam julat yang luas mengikut kehendak anda. Artikel ini akan memberi anda 8 contoh berguna untuk menggunakan kod VBA untuk Menapis data dalam excel menggunakan kod VBA dengan ilustrasi yang jelas.

Muat Turun Buku Kerja Amalan

Anda boleh memuat turun templat Excel percuma dari sini dan berlatih sendiri.

Kod VBA untuk Menapis Data.xlsm

8 Contoh untuk Menggunakan Kod VBA untuk Menapis Data dalam Excel

Mari kita mula-mula memperkenalkan set data kami yang mewakili beberapa Jantina, Status dan pelajar Umur .

1. Gunakan Kod VBA untuk Menapis Data Berdasarkan Kriteria Teks dalam Excel

Dalam contoh pertama kami, kami akan menggunakan VBA untuk Menapis sahaja Lelaki pelajar daripada lajur Jantina set data.

Langkah:

  • Klik kanan pada tajuk helaian .
  • Kemudian pilih Lihat Kod daripada menu Konteks .

Tidak lama lagi selepas itu, tetingkap VBA akan dibuka.

  • Taip kod berikut dalam ia-
5584
  • Kemudian, minimumkan VBA

Pecahan Kod

  • Di sini, saya mencipta prosedur Sub , Filter_Data_Text() .
  • Kemudian menggunakan Julat sifat untuk mengisytiharkan nama helaian kami masing-masing dan julat
  • Seterusnya, saya menggunakan kaedah AutoFilter untuk menggunakan Kriteria pilihan saya di mana Field:=2 bermaksud lajur 2 . Dan Kriteria1:=”Lelaki” untuk Menapis data untuk Lelaki.
  • Selepas itu, ke buka kotak dialog Makros , klik seperti berikut: Pembangun > Makro.

  • Pilih Nama Makro seperti yang dinyatakan dalam kod .
  • Akhir sekali, cuma tekan Run .

Sekarang lihat yang kami ada hanya Data pelajar lelaki selepas Penapisan .

Baca Lagi: Data Penapis Excel Berdasarkan Nilai Sel (6 Cara Cekap)

2. Gunakan Kod VBA untuk Menapis Data dengan Berbilang Kriteria dalam Satu Lajur

Di sini, kami akan Menapis untuk berbilang kriteria dalam satu lajur. Daripada lajur nombor tiga set data, kami akan Penapis untuk Siswazah dan Pelajar Lepasan Ijazah .

Langkah:

  • Ikuti dua langkah pertama daripada contoh pertama untuk membuka tetingkap VBA .
  • Kemudian, taip kod berikut di dalamnya-
2134
  • Kemudian minimumkan VBA

Pecahan Kod

  • Di sini, saya mencipta prosedur Sub , Filter_One_Column() .
  • Kemudian gunakan sifat Julat untuk mengisytiharkan nama helaian dan julat
  • kami masing-masing Seterusnya, saya menggunakan theKaedah AutoFilter untuk menggunakan Kriteria pilihan saya di mana Field:=3 bermaksud lajur 3 . Di sini, Kriteria1:=”Graduan” dan Kriteria2:=”Ijazah Sarjana” untuk Menapis Status pelajar.
  • Akhirnya, saya menggunakan Operator:=xlOr untuk menggunakan OR condition Filter untuk berbilang kriteria.
  • Pada ini seketika, ikut langkah ketiga daripada contoh pertama untuk membuka dialog Makros kotak .
  • Kemudian, pilih Nama Makro yang ditentukan dan tekan Run .

Tidak lama selepas itu, anda akan mendapat baris Ditapis berdasarkan berbilang kriteria seperti imej di bawah.

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

3. Gunakan Kod VBA untuk Menapis Data dengan Berbilang Kriteria dalam Lajur Berbeza dalam Excel

Kini kami akan Menapis untuk berbilang kriteria- Lelaki dan Graduan pelajar.

Langkah:

  • Ikuti dua langkah pertama daripada contoh pertama untuk buka VBA
  • Kemudian, tulis kod berikut di dalamnya-
5716
  • Selepas yang meminimumkan tetingkap VBA .

Pecahan Kod

  • Di sini, saya mencipta prosedur Sub , Filter_Different_Columns() .
  • Kemudian, saya menggunakan pernyataan With untuk menggunakan Berbilang Lajur .
  • Kemudian menggunakan Julat harta untuk mengisytiharkan nama helaian dan julat
  • Seterusnya, saya menggunakan kaedah AutoFilter untuk menggunakan Kriteria daripada pilihan saya di mana Field:=2 bermaksud lajur 2 dan Field:=3 bermaksud lajur 3 .
  • Di sini , dipilih Kriteria1:=”Lelaki” untuk lajur Jantina dan Kriteria1:=”Graduan” untuk lajur Status ke Tapis data daripada lajur berbeza .
  • Kemudian ikut langkah ketiga daripada contoh pertama untuk membuka Kotak dialog Makro .
  • Kemudian, pilih Nama Makro yang ditentukan dan tekan Run .

Berikut ialah output berbilang kriteria.

Baca Lagi: Excel VBA untuk Tapis dalam Lajur Yang Sama mengikut Berbilang Kriteria (6 Contoh)

4. Gunakan Kod VBA untuk Menapis 3 Item Teratas dalam Excel

Dalam contoh ini, kami akan Menapis tiga pelajar terbaik mengikut umur mereka.

Langkah:

  • Ikuti dua langkah pertama daripada contoh pertama untuk membuka tetingkap VBA .
  • Kemudian taip kod berikut di dalamnya-
5344
  • Selepas itu minimumkan Tetingkap VBA .

Pecahan Kod

  • Di sini, saya mencipta Sub prosedur, Filter_Top3_Items() .
  • Dan kemudian menggunakan Operator:=xlTop10Items ke Filter untuk tiga teratas data .
  • Kini ikut langkah ketiga daripada contoh pertama untuk membuka Dialog Makro kotak .
  • Kemudian pilih nama Makro seperti yang dinyatakan dalam kod dan tekan Run .

Kemudian anda akan mendapat output seperti imej di bawah-

Baca Lagi: Cara Menapis Berdasarkan Nilai Sel Menggunakan Excel VBA (4 Kaedah)

Bacaan Serupa

  • Cara Salin dan Tampal Apabila Penapis Digunakan dalam Excel
  • Cara Menapis Nilai Unik dalam Excel (8 Cara Mudah)
  • Tapis Berbilang Kriteria dalam Excel dengan VBA (Kedua-duanya DAN dan ATAU Jenis)
  • Cara Menggunakan Penapis Teks dalam Excel (5 Contoh)
  • Cara Menapis mengikut Tarikh dalam Excel (4 Pantas Kaedah)

5. Gunakan Kod VBA untuk Menapis 50 Peratus Teratas dalam Excel

Mari gunakan VBA kod untuk Menapis lima puluh peratus teratas pelajar berdasarkan umur mereka .

Langkah:

  • Pertama, Ikuti dua langkah pertama daripada contoh pertama untuk membuka tetingkap VBA .
  • Kemudian, taip kod berikut di dalamnya-
5048
  • Minimumkan tetingkap VBA .

Pecahan Kod

  • Di sini, saya mencipta prosedur Sub , Filter_Top50_Percent() .
  • Kemudian, menggunakan Operator:=xlTop10Percent hingga Tapis lima puluh peratus teratas daripada lajur-4 .
  • Pada masa ini, ikut langkah ketiga daripada contoh pertama untuk membuka Kotak dialog Makro.
  • Kemudian pilih Nama Makro yang ditentukan dan tekan Run .

Terdapat sejumlah 7 pelajar jadi untuk 50 peratus , ia menunjukkan lebih kurang tiga pelajar .

Baca Lagi: Cara Menggunakan Formula Peratusan Untung dalam Excel (3 Contoh)

6 . Gunakan Kod VBA untuk Menapis Data Menggunakan Kad Liar

Kita boleh menggunakan Watak Kad Liar-* (asterisk) dalam kod VBA untuk Tapis data dalam Excel. Daripada lajur Status , kami hanya akan Menapis nilai yang mengandungi 'Siaran' .

Langkah:

  • Ikuti dua langkah pertama daripada contoh pertama untuk membuka tetingkap VBA .
  • Kemudian tulis kod berikut di dalamnya-
9389
  • Kemudian, minimumkan tetingkap VBA .

Pecahan Kod

  • Di sini, saya mencipta prosedur Sub , Filter_with_Wildcard() .
  • Kemudian gunakan Julat (“B4”) untuk menetapkan julat.
  • Seterusnya , digunakan AutoFilter ke Tapis dalam Medan:=3 bermaksud lajur 3.
  • Kriteria1:=”*Siaran *” untuk Tapis nilai yang mengandungi 'Siaran'.
  • Sekarang ikut langkah ketiga daripada yang pertama contoh untuk membuka dialog Makroskotak.
  • Pilih Nama Makro yang ditentukan dan tekan Run .

Kemudian anda akan mendapat output yang diingini.

Baca Lagi: Cara Menambah Penapis dalam Excel (4 Kaedah )

7. Benamkan Excel VBA untuk Menyalin Data yang Ditapis dalam Helaian Baharu dalam Excel

Pastikan terdapat beberapa data Ditapis dalam set data saya. Sekarang saya akan menyalinnya ke dalam helaian baharu menggunakan VBA . Kod ini tidak akan berfungsi dengan betul dalam helaian, anda perlu menggunakannya dalam modul.

Langkah:

  • Tekan Alt+F11 untuk membuka VBA

  • Kemudian klik Sisipkan > Modul untuk membuka modul .

  • Sekarang tulis kod berikut
4179
  • Kemudian minimumkan VBA

Pecahan Kod

  • Di sini, saya mencipta prosedur Sub , Copy_Filtered_Data_NewSheet() .
  • Selepas itu mengisytiharkan dua pembolehubah- x Rng Sebagai Julat dan xWS Sebagai Lembaran Kerja.
  • Kemudian gunakan satu penyataan JIKA untuk tandai Disaring
  • Kemudian, gunakan MsgBox untuk menunjukkan output.
  • Kemudian gunakan Lembaran Kerja(“Salin Data Ditapis”).AutoFilter .Julat untuk memilih julat Ditapis dan gunakan Tambah untuk menambah helaian baharu.
  • Akhir sekali, Salin Julat(“G4”) akan menyalin data Disaring ke helaian baharu .
  • Kemudian, ikutilangkah ketiga daripada contoh pertama untuk membuka kotak dialog Makro .
  • Kemudian pilih nama Makro yang ditentukan dan tekan Run .

Sekarang lihat Excel telah membuka helaian baharu dan menyalin baris Ditapis.

Baca Lagi: Pintasan untuk Penapis Excel (3 Penggunaan Pantas dengan Contoh)

8. Gunakan Kod VBA untuk Menapis Data Menggunakan Senarai Turun

Dalam contoh terakhir kami, kami akan membuat senarai lungsur untuk jantina dahulu kemudian kami akan menggunakannya untuk Menapis data. Untuk itu, saya telah meletakkan kriteria jantina di lokasi lain dan kami akan membuat senarai lungsur turun dalam Sel D14 .

Langkah:

  • Pilih Sel D14 .
  • Kemudian klik seperti berikut: Data > Alat Data > Pengesahan Data > Pengesahan Data.

Tidak lama kemudian, kotak dialog akan dibuka.

Pilih Senaraikan daripada menu lungsur Benarkan .

Kemudian klik pada ikon Buka daripada kotak Sumber .

Sekarang pilih julat kriteria dan tekan butang Enter .

  • Pada masa ini, hanya tekan OK .

Sekarang senarai drop-down kami sudah sedia.

  • Sekarang Ikuti dua langkah pertama daripada contoh pertama untuk membuka tetingkap VBA .
  • Kemudian tulis kod berikut di dalamnya-
9538
  • Kemudian minimumkan VBAtetingkap .

Pecahan Kod

  • Di sini, saya mencipta prosedur Sub Persendirian , Tukar_Lembaran Kerja(Sasaran ByVal Sebagai Julat).
  • Kemudian, saya memilih Lembaran Kerja daripada Umum dan Tukar daripada Pengisytiharan .
  • Kemudian tetapkan Alamat untuk mengetahui lokasi.
  • Akhir sekali dalam JIKA penyataan menggunakan kaedah AutoFilter dengan Medan dan Kriteria
  • Kini hanya pilih kriteria daripada senarai lungsur turun dan Penapis akan diaktifkan .

Berikut ialah output Disaring selepas memilih Lelaki daripada drop-down .

Baca Lagi: Cara Menapis Mengikut Senarai dalam Helaian Lain dalam Excel (2 Kaedah)

Bahagian Amalan

Anda akan mendapat helaian amalan dalam fail Excel yang diberikan di atas untuk mempraktikkan cara yang dijelaskan.

Kesimpulan

Saya harap prosedur yang diterangkan di atas cukup baik untuk menggunakan VBA kod untuk Menapis data dalam excel. Jangan ragu untuk bertanya apa-apa soalan di bahagian komen dan sila berikan maklum balas kepada saya.

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.