Sebelumnya silahkan download dulu file contoh nya disini
Salah satu kelebihan Advanced Filter
apabila dibandingkan dengan Autofilter adalah kemampuan Advanced Filter untuk
menggunakan kriteria yang lebih kompleks (Kata Advanced atau lebih maju memang
digunakan untuk menunjukan hal ini). Advanced Filter ada dibawah Obyek Range.
Dengan menggunakan Macro,
Penggunaan Advanced Filter akan menjadi sangat bermanfaat khusus nya apabila
kita bekerja dengan sebuah Tabel / Database Excel.
Dalam syntax Advanced Filter, secara
garis besar ada 5 komponen yang harus dipahami. Komponen-komponen tersebut
adalah :
1. Range
List / Tabel / Database sebagai sumber data
2. Action
: Jenis filter apa yang akan diterapkan. Filter langsung pada Database atau
copy hasil filter ke tempat lain.
3. Kriteria
/ CriteriaRange
4. Range
Tujuan / CopyToRange : berkaitan dengan Nomer 2 apabila kita memilih untuk
mengcopy hasil filter ke tempat lain
5. Unique
: apabila kita menghendaki data yang di filter hanya yang Unik saja.
Bentuk Syntax secara keseluruhan :
Range.AdvancedFilter (Action,
Kriteria, RangeTujuan, Unique)
1.
Range List / Tabel / Database
Seperti yang dijelaskan diatas,
Range disini adalah sumber data yang akan kita filter. Usahakan List / Tabel
ini haruslah berkaidah Database (Baris awal diformat Bold sebagai Header, Baris
berikutnya adalah data, Tidak ada baris dan kolom kosong, Tidak ada Header dan
data yang di Merge / digabung, dst – akan dibahas di kesempatan lain).
2.
Action
Jenis Filter yang akan diterapkan.
Ada 2 jenis filter yaitu : xlFilterInPlace dan xlFilterCopy. xlFilterInPlace
berfungsi memfilter data langsung pada Database nya. Sedangkan xlFilterCopy
mengcopy hasil filter ke tempat lain.
3.
Kriteria / CriteriaRange
Range yang akan digunakan sebagai
petunjuk bagi Excel, parameter data yang akan di filter. Range yang digunakan
sebagai Kriteria ini HARUS persis sama dengan Header dari Database kita. Untuk
lebih mudah nya, copy saja kolom-kolom Header nya yang akan kita gunakan
sebagai kriteria. Urutan Kolom-kolom nya tidak harus sama persis. Pada contoh
gambar dibawah terlihat urutan kriteria nya Nama, Jkel dan Jurusan mulai dari
B1 sampai dengan D2.
4.
Range Tujuan / CopyToRange
Pilihan ini hanya berlaku apabila
kita menggunakan pilihan Action xlFilterCopy. Karena apabila kita memilih untuk
menggunakan Action xlFilterInPlace. Kecuali setelah difilter menggunakan xlFilterInPlace
data yang sudah difilter akan dipindahkan ke tempat lain. Masalah nya jadi
kerja dua kali kan ? :D
5.
Unique
Pilihan untuk yang digunakan
untuk memilih data yang unik saja atau tanpa duplikat.
Pengaturan Tabel, Kriteria dan Tujuan Advanced Filter |
Maka apabila melihat contoh
gambar, penulisan skrip nya menjadi :
Range("A4:E14").AdvancedFilter
Action:=xlFilterCopy, _
CriteriaRange:=Range("B1:D2"), _
CopyToRange:=Range("G4:K4"), _
Unique:=False
|
No comments:
Post a Comment