Filter VBA Excel
Filter VBA dapat digunakan untuk memilah atau mengambil data spesifik yang diinginkan. Misalnya, seseorang dapat menggunakan fungsi Autofilter sebagai fungsi lembar kerja. Namun, fungsi ini memiliki argumen lain yang bersifat opsional, dan satu-satunya argumen wajib adalah ekspresi yang mencakup rentang. Misalnya, worksheets(“Sheet1”).Range(“A1”).Autofilter akan menerapkan filter pada kolom pertama.
Filter di VBA bekerja dengan cara yang sama seperti di lembar kerja. Satu-satunya hal yang berbeda adalah kita dapat mengotomatiskan tugas rutin memfilter data melalui pengkodean.
Anda bebas menggunakan gambar ini di situs web Anda, templat, dll., Harap berikan kami
tautan atribusi
AutoFilter adalah fungsi yang mencakup banyak nilai sintaks. Di bawah ini adalah parameter yang terlibat dalam fungsi AutoFilter.
- Rentang adalah hal pertama yang perlu kita sediakan untuk menggunakan opsi “Filter Otomatis”. Setelah itu, hanya untuk rentang sel mana kita perlu menerapkan filter, misalnya Range (“A1:D50”).
- Bidang adalah argumen pertama dalam fungsi. Setelah kami memilih rentang sel melalui objek VBA RANGEVBA RANGE ObjectRange adalah properti di VBA yang membantu menentukan sel tertentu, rentang sel, baris, kolom, atau rentang tiga dimensi. Dalam konteks lembar kerja Excel, objek rentang VBA menyertakan sel tunggal atau beberapa sel yang tersebar di berbagai baris dan kolom.Baca lebih lanjut, kita perlu menyebutkan untuk kolom rentang mana kita ingin menerapkan filter.
- Kriteria 1 bukan apa-apa, tetapi dalam Bidang yang dipilih , nilai yang ingin Anda filter.
- Operator yang mungkin kita gunakan jika ingin menggunakan argumen Kriteria 2 . Dalam opsi ini, kita dapat menggunakan opsi di bawah ini.
xlAnd, xlOr, xlBottom10Items, xlTop10Items, xlTop10Percent, xlBottom10Percent, xlFilterCellColor, xlFilterDynamic, xlFilterFontColor, xlFilterIcon, xlFilterValues - Visible Dropdown menampilkan simbol filter di kolom filter yang diterapkan. Jika Anda ingin menampilkannya, Anda dapat memberikan argumen sebagai BENAR atau SALAH.
Contoh untuk Memfilter Data menggunakan VBA
Contoh #1 – Terapkan atau Hapus Filter ke Data
Jika Anda ingin menerapkan opsi filter ke data, maka kami dapat menonaktifkannya dan mengaktifkan opsi ini. Sebagai contoh, lihat gambar data di bawah ini.
Langkah 1: Berikan rentang data
Untuk mengaktifkan opsi filter terlebih dahulu, kita perlu menyediakan rentang data kita. Misalnya pada gambar di atas, data kita tersebar dari A1 hingga G31. Jadi, berikan rentang ini menggunakan objek RANGE.
Kode:
Sub Filter_Example() Range (“A1:G31”) End Sub
Langkah 2: Kemudian akses fungsi AutoFilter
Sekarang, akses fungsi AutoFilter untuk rentang ini.
Kode:
Sub Filter_Example() Range(“A1:G31”).AutoFilter End Sub
Langkah 3: Jalankan kode untuk mengaktifkan filter
Itu semuanya. Jalankan kode ini untuk mengaktifkan AutoFilter.
Kode ini berfungsi sebagai toggle. Jika filter tidak diterapkan, itu akan diterapkan. Jika sudah diterapkan, maka akan dihapus.
Contoh #2 – Filter Nilai Spesifik
Sekarang, kita akan melihat cara menggunakan parameter opsi AutoFilter. Ambil data yang sama seperti di atas. Misalnya, kita harus memfilter semua nama gender “Laki-laki”.
Langkah 1: Pilih Rentang dan Buka Fungsi Autofilter
Langkah 2: Kemudian Pilih Bidang
Dalam argumen pertama fungsi, yaitu Field, kita perlu menyebutkan referensi kolom yang ingin kita saring. Dalam contoh ini, kita hanya perlu memfilter kandidat ‘Laki-laki’, kolom ‘C’, sehingga nomor kolomnya adalah 3.
Langkah 3: Sekarang Sebutkan Kriteria
Sekarang untuk Field yang disediakan ini, kita perlu menyebutkan Kriteria 1, yaitu nilai apa yang perlu kita filter di dalam Field. Kita perlu memfilter ‘Pria’ dari kolom ini.
Kode:
Sub Filter_Example() Range(“A1:G31″).AutoFilter Field:=3, Criteria1:=”Male” End Sub
Langkah 4: Dan jalankan kodenya
Oke, itu saja. Jadi kode ini hanya akan memfilter kandidat ‘Laki-laki’ sekarang.
Contoh #3 – Penggunaan Argumen OPERATOR
Saat Anda ingin memfilter lebih dari satu nilai dari kolom, kita perlu menggunakan argumen ‘Operator’. Misalnya, dari kolom ‘Jurusan’, kita hanya perlu memfilter ‘Matematika & Politik’, lalu kita perlu menggunakan argumen ini.
Langkah 1: Pilih Range dan Autofilter Field
Pertama, berikan Rentang sel dan bidang .
Kode:
Sub Filter_Example() Range(“A1:G31”).Field AutoFilter:=5, End Sub
Langkah 2: Masukkan Kriteria 1 sebagai Matematika
Untuk bidang yang disebutkan, kami perlu menyediakan Kriteria 1 sebagai “Matematika”.
Kode:
Sub Filter_Example() Range(“A1:G31″).AutoFilter Field:=5, Criteria1:=”Matematika”, Sub Akhir
Langkah 3: Gunakan Operator xl
Karena kita perlu memfilter satu nilai lagi dari kolom atau bidang yang sama, gunakan simbol operator sebagai “xlOr”.
Kode:
Sub Filter_Example() Range(“A1:G31″).AutoFilter Field:=5, Criteria1:=”Math”, Operator:=xlOr End Sub
Langkah 4: Masukkan Kriteria 2 sebagai Politik
Dan untuk argumen Kriteria 2 , sebutkan nilainya sebagai “Politik”.
Kode:
Sub Filter_Example() Range(“A1:G31″).AutoFilter Field:=5, Criteria1:=”Math”, Operator:=xlOr, Criteria2:=”Politics” End Sub
Ini akan memfilter “Matematika” dan “Politik” dari kolom “Major”.
Contoh #4 – Filter Angka dengan Simbol Operator
Misalnya, jika Anda ingin memfilter angka, kami dapat memfilter angka tertentu dan angka di atas, di bawah, atau di antara nilai tertentu dan rentang nilai.
Misalnya ingin memfilter orang yang berumur lebih dari 30 tahun, maka kita bisa menuliskan kode di bawah ini dari kolom umur.
Kode:
Sub Filter_Example() Range(“A1:G31″).AutoFilter Field:=7, Criteria1:=”>30″ End Sub
Ini akan memfilter semua nilai yang lebih dari 30.
Sekarang, jika Anda ingin memfilter nilai antara 21 dan 31, kita dapat menggunakan kode di bawah ini.
Kode:
Sub Filter_Example() Range(“A1:G31″).AutoFilter Field:=7, Criteria1:=”>21″, Operator:=xlAnd, Criteria2:=”<31″ End Sub
Ini akan menyaring orang berusia antara 21 dan 30.
Contoh #5 – Terapkan Filter untuk Lebih dari Satu Kolom
Kami perlu menggunakan teknik yang sedikit berbeda jika Anda ingin memfilter nilai dari lebih dari satu kriteria kolom.
Jika Anda ingin memfilter “Status Siswa” sebagai “Lulusan” dan “Negara” sebagai “AS”, pertama-tama, kita perlu menyediakan RANGE sel di bawah pernyataan WITH.
Kode:
Sub Filter_Example() Dengan Range(“A1:G31”) Diakhiri Dengan End Sub
Di dalam pernyataan WITH, berikan kriteria pertama yang akan difilter.
Kode:
Sub Filter_Example() Dengan Range(“A1:G31″) .AutoFilter Field:=4, Criteria1:=”Lulusan” Akhiri Dengan Sub Akhir
Sekarang, di baris berikutnya, lakukan hal yang sama untuk “Negara” dengan mengubah “Bidang” menjadi enam dan “Kriteria” menjadi “AS”.
Kode:
Sub Filter_Example() Dengan Range(“A1:G31″) .AutoFilter Field:=4, Criteria1:=”Graduate” .AutoFilter Field:=6, Criteria1:=”US” End With End Sub
Sekarang, ini akan memfilter “Lulusan” hanya untuk negara “AS”.
Hal-hal untuk diingat
- Ini akan menerapkan hal pertama hanya untuk rentang filter sel yang disebutkan.
- Bidang bukan apa-apa di kolom mana Anda ingin memfilter data.
- Jika memfilter nilai dari lebih dari satu kolom, gunakan pernyataan Dengan.
Artikel yang Direkomendasikan
Artikel ini adalah panduan untuk Filter VBA. Di sini kita belajar cara menerapkan filter ke data, beberapa contoh VBA, dan mengunduh template Excel. Di bawah ini adalah beberapa artikel Excel berguna yang terkait dengan VBA: –
- Filter Otomatis VBA
- VBA Lakukan Loop
- Bagaimana Cara Mengaktifkan Solver di VBA?
- Tambahkan Filter di Excel
- Nilai Tempel VBA