VBA AutoFilter - Bagaimana cara menggunakan Kriteria Filter Otomatis VBA untuk Menyaring Data?

Filter Otomatis VBA Excel

AutoFilter di VBA digunakan sebagai ekspresi dan sintaks untuk itu sebagai ekspresi berikut. Autofilter (Bidang, Kriteria 1, Operator, Kriteria 2, Turun-Bawah) semua argumen bersifat opsional. Filter berguna dalam memfilter data tertentu dari data yang sangat besar.

Misalkan Anda adalah pengguna biasa, maka filter excel bukanlah hal yang asing bagi Anda. Beberapa alat yang kami gunakan di lembar kerja juga diintegrasikan ke dalam VBA, dan opsi filter otomatis adalah salah satu alat penting yang tersedia di VBA. Seperti yang kita semua tahu, filter excel tersedia di bawah tab data.

Dengan menggunakan opsi filter ini, kita dapat bermain-main dengan data. Jika Anda berurusan dengan jumlah data minimal dan jika menurut Anda opsi filter otomatis VBA tidak benar-benar diperlukan, Anda dapat terus menggunakan opsi filter lembar kerja.

Jika Anda berurusan dengan data dalam jumlah besar, Anda dapat menggunakan opsi Autofilter untuk menyederhanakan alur proses.

Sintaks Fungsi Filter Otomatis

Filter Otomatis di Excel VBA dapat digunakan dengan objek rentang. Seperti fungsi kami yang lain, ini juga memiliki sintaksnya sendiri.

  • Rentang: Rentang hanya dalam rentang apa Anda ingin menerapkan filter.
  • Bidang: Bidang berarti dari kolom mana dari rentang yang telah Anda pilih Anda ingin memfilter data. Sebuah kolom akan dihitung dari kiri ke kanan.

Misalnya, jika rentang Anda dari A1 hingga D100 dan Anda ingin menerapkan filter untuk kolom D, maka nomor bidang Anda adalah 4 karena, dalam rentang yang dipilih, D adalah kolom keempat.

Kriteria 1: Di lapangan, Anda telah memilih apa yang ingin Anda filter.

  • Operator: Jika Anda ingin menerapkan lebih dari satu kriteria untuk memfilter data, maka kita perlu menggunakan simbol operator. Beberapa kode operator adalah sebagai berikut.

xlAnd, xlOr, xlBottom10Items, xlTop10Items, xlTop10Percent, xlBottom10Percent, xlFilterCellColor, xlFilterDynamic, xlFilterFontColor, xlFilterIcon, xlFilterValues.

Kriteria 2: Apa hal kedua yang ingin Anda filter bersama dengan Kriteria 1?

  • Drop Down Terlihat: Apakah Anda ingin menampilkan ikon filter fop down di kolom yang difilter. Jika Anda ingin menampilkan TRUE adalah argumen, jika bukan FALSE, adalah argumennya.

Bagaimana Cara Menerapkan Filter menggunakan VBA AutoFilter? (dengan Contoh)

Asumsikan di bawah ini data yang sedang Anda kerjakan.

Sekarang dengan menggunakan kode VBA, kami akan menerapkan filter. Ikuti langkah-langkah di bawah ini untuk menerapkan filter.

Langkah 1: Mulai subprocedure dengan memberi nama pada makro.

Kode:

Sub AutoFilter_Example1 () End Sub

Langkah 2: Hal pertama adalah dalam kisaran apa kita perlu menerapkan filter. Dalam hal ini, kita perlu menerapkan rentang dari rentang A1 hingga E25.

Kode:

Sub AutoFilter_Example1 () Range ("A1: E25") End Sub

Langkah 3: Setelah rentang dipilih, sekarang terapkan opsi filter otomatis.

Kode:

Sub AutoFilter_Example1 () Range ("A1: E25"). AutoFilter End Sub

Kami tidak memilih nilai apa pun menggunakan filter otomatis. Sebaliknya, kami hanya menerapkan filter pada saat ini.

Jalankan kode menggunakan tombol F5, atau secara manual, itu akan memasukkan filter untuk rentang yang dipilih.

Jadi itu telah menerapkan filter ke data. Sekarang kita akan melihat cara memfilter data.

Contoh # 1 - Memfilter Data dengan Menggunakan Filter Otomatis

Perhatikan data yang sama dari contoh di atas. Sekarang kita perlu menyaring departemen "Keuangan" dari kolom departemen.

Langkah 1: Setelah filter diterapkan, argumen pertama adalah menyebutkan dari kolom mana kami memfilter data. Dalam hal ini, kita perlu memfilter data dari kolom Departemen, jadi kolom nomor jika 5.

Kode:

Sub AutoFilter_Example1 () Range ("A1: E25"). Bidang AutoFilter: = 5, End Sub

Langkah 2: Kriteria 1 tidak lain adalah apa yang ingin kita filter dari kolom ke- 5 . Jadi kita perlu memfilter "Keuangan".

Kode:

Sub AutoFilter_Example1 () Range ("A1: E25"). Bidang AutoFilter: = 5, Criteria1: = "Finance" End Sub

Jadi itu saja, jalankan kode ini secara manual, atau melalui tombol F5, itu hanya akan menyaring "Keuangan" dari daftar.

Contoh # 2 - Operator di AutoFilter

Kami telah melihat cara memfilter nilai tunggal. Sekarang kita akan melihat cara memfilter banyak elemen. Asumsikan bersama dengan "Keuangan" Anda ingin memfilter departemen "Penjualan" juga, jadi kita dapat melakukannya dengan menggunakan Operator.

Langkah 1: Setelah menerapkan kriteria pertama di argumen berikutnya, pilih operator sebagai "xlOr".

Kode:

Sub AutoFilter_Example2 () Range ("A1: E25"). Bidang AutoFilter: = 5, Criteria1: = "Finance", Operator: = xlOr End Sub

Langkah 2: Sekarang, di Kriteria 2, sebutkan nilainya sebagai "Penjualan".

Kode:

Sub AutoFilter_Example2 () Range ("A1: E25"). Bidang AutoFilter: = 5, Criteria1: = "Finance", Operator: = xlOr, Criteria2: = "Sales" End Sub

Langkah 3: Oke, selesai jalankan kode ini menggunakan tombol F5 atau secara manual, ini akan memfilter "Keuangan" & "Penjualan".

Dalam argumen Operator, saya telah menggunakan "xlOr" ini akan memilih "Keuangan" & "Penjualan" di bawah filter.

Contoh # 3 - Memfilter Angka menggunakan Filter Otomatis

Using the Operator symbol “XlAnd,” we can filter out numbers as well. Assume from the Overtime column you want to filter out all the values which are>1000 but <3000.

Step 1: The first thing is changing the Field from 5 to 4.

Code:

Sub AutoFilter_Example3() Range("A1:E25").AutoFilter Field:=4 End Sub

Step 2: Criteria 1 is>1000.

Code:

Sub AutoFilter_Example3() Range("A1:E25").AutoFilter Field:=4,Criteria1:=">1000", End Sub

Step 3: Here, we need to match both the criteria, so use “xlAnd” as the operator.

Code:

Sub AutoFilter_Example3() Range("A1:E25").AutoFilter Field:=4, Criteria1:=">1000", Operator:=xlAnd, End Sub

Step 4: Criteria 2 will <3000.

Code:

Sub AutoFilter_Example3() Range("A1:E25").AutoFilter Field:=4, Criteria1:=">1000", Operator:=xlAnd, Criteria2:="<3000" End Sub

Now, if you run this code manually or through the F5 key, it will filter out all the values from the Overtime column, which are>1000 but <3000.

Example #4 - Filter from Different Columns using AutoFilter

In order to filter out data from different columns, we need to use a different process. Assume you want to filter out the “Finance” department and also you want to filter out Salary numbers, which are>25000 but <40000.

You can use the below code does that.

Code:

Sub AutoFilter_Example4 () Dengan Range ("A1: E25") .AutoFilter Field: = 5, Criteria1: = "Finance" .AutoFilter Field: = 2, Criteria1: = "> 25000", Operator: = xlAnd, Criteria2: = " <40000 "Akhiri Dengan Sub Akhir

Ini akan memfilter dua kolom.

Jalankan kode ini menggunakan tombol F5, atau Anda dapat menjalankannya secara manual.

Hal-hal untuk diingat

  • Coba kombinasi yang berbeda di bawah Operator untuk mendapatkan pengetahuan tentang VBA AutoFilter.
  • Jika Anda tidak yakin apa yang harus dimasukkan, coba gunakan perekam makro.
  • Jika Anda ingin memfilter nilai teks, Anda perlu memasukkannya dalam tanda kutip ganda.
  • Gunakan pernyataan WITH untuk menerapkan lebih dari satu filter kolom.

Artikel yang menarik...