Tindakan Makro ApplyFilter

Anda bisa menggunakan tindakan ApplyFilter untuk menerapkan filter, kueri, atau klausa SQL WHERE ke tabel, formulir, atau laporan untuk membatasi atau mengurutkan rekaman di dalam tabel, atau rekaman dari tabel atau kueri yang mendasari formulir atau laporan. Untuk laporan, Anda dapat menggunakan tindakan ini hanya dalam makro yang ditentukan oleh properti acara OnOpen laporan.

Catatan: Anda dapat menggunakan tindakan ini untuk menerapkan klausa SQL WHERE hanya ketika menerapkan filter server. Filter server tidak dapat diterapkan pada sumber rekaman prosedur tersimpan.

Catatan: Tindakan makro ApplyFilter tidak tersedia di aplikasi web Access.

Pengaturan

Tindakan ApplyFilter memiliki argumen berikut ini.

Argumen tindakan

Deskripsi

Nama Filter

Nama filter atau kueri yang membatasi atau mengurutkan rekaman tabel, formulir, atau laporan. Anda bisa memasukkan nama kueri atau filter yang sudah ada yang telah disimpan sebagai kueri dalam kotak Nama Filter di bagian Argumen Tindakan di panel Penyusun Makro.

Catatan: Ketika Anda menggunakan tindakan ini untuk menerapkan filter server, argumen Nama Filter harus kosong.

Where Condition

Klausa SQL WHERE yang valid (tanpa kata WHERE) atau ekspresi yang membatasi rekaman tabel, formulir, atau laporan.

Catatan: Dalam ekspresi argumen Where Condition, bagian sisi kiri ekspresi biasanya berisi nama bidang dari tabel atau kueri yang mendasari untuk formulir atau laporan. Bagian sisi kanan ekspresi biasanya berisi kriteria yang ingin Anda terapkan ke bidang ini untuk membatasi atau mengurutkan rekaman. Misalnya, kriteria dapat berupa nama kontrol pada formulir lain yang berisi nilai yang Anda inginkan agar cocok dengan rekaman di baris pertama. Nama kontrol harus sepenuhnya memenuhi syarat, misalnya:

Formulir!formnamecontrolname

Nama bidang harus diapit tanda kutip ganda dan literal string harus diapit tanda kutip tunggal.

Panjang maksimum argumen Where Condition adalah 255 karakter. Jika Anda perlu memasukkan klausa SQL WHERE yang lebih panjang, gunakan metode ApplyFilter dari objek DoCmd dalam modul Visual Basic for Applications (VBA). Anda bisa memasukkan pernyataan klausa SQL WHERE hingga 32.768 karakter dalam VBA.


Catatan: Anda bisa menggunakan argumen Nama Filter jika Anda sudah menentukan filter yang menyediakan data yang sesuai. Anda bisa menggunakan argumen Where Condition untuk memasukkan kriteria pembatasan secara langsung. Jika Anda menggunakan kedua argumen tersebut, Access menerapkan klausa WHERE ke hasil filter. Anda harus menggunakan salah satu atau kedua argumen tersebut.

Keterangan

Anda bisa menerapkan filter atau kueri pada formulir di Tampilan formulir atau tampilan lembar data.

Filter dan kondisi WHERE yang Anda terapkan menjadi pengaturan properti Filter atau ServerFilter formulir atau laporan.

Untuk tabel dan formulir, tindakan ini serupa dengan mengklik Terapkan Filter/Urutkan atau Terapkan Filter Server pada menu Rekaman. Menu perintah menerapkan filter yang paling baru dibuat ke tabel atau formulir, sementara tindakan ApplyFilter menerapkan filter atau kueri yang ditentukan.

Dalam database Access, jika Anda menunjuk ke Filter pada menu Rekaman lalu mengklik Filter/Urutkan Tingkat Lanjut setelah menjalankan tindakan ApplyFilter, Jendela Filter/Urutan Tingkat Lanjut memperlihatkan kriteria filter yang sudah Anda pilih dengan tindakan ini.

Untuk menghapus filter dan menampilkan semua rekaman untuk tabel atau formulir dalam database Access, Anda bisa menggunakan tindakan ShowAllRecords atau perintah Hapus Filter/Urutkan pada menu Rekaman. Untuk menghapus filter dalam proyek Access (.adp), Anda bisa kembali ke jendela Filter Server Berdasarkan Formulir dan menghapus semua kriteria filter lalu mengklik Terapkan Filter Server pada menu Rekaman pada toolbar, atau atur properti ServerFilterByForm ke False (0).

Saat Anda menyimpan sebuah tabel atau formulir, Access akan menyimpan filter apa pun yang saat ini ditetapkan dalam objek itu, tapi tidak akan menerapkan filter secara otomatis saat berikutnya objek dibuka (meskipun akan otomatis menerapkan setiap urutan yang Anda terapkan pada objek tersebut sebelum disimpan). Jika Anda ingin menerapkan filter secara otomatis saat formulir dibuka pertama kali, tentukan makro yang berisi tindakan ApplyFilter atau prosedur acara yang berisi metode ApplyFilter dari objek DoCmd sebagai pengaturan properti acara OnOpen di formulir. Anda juga bisa menerapkan filter dengan menggunakan tindakan OpenForm atau OpenReport, atau metode terkait. Untuk menerapkan filter secara otomatis saat tabel dibuka pertama kali, Anda bisa membuka tabel dengan menggunakan makro yang berisi tindakan OpenTable, segera diikuti oleh tindakan ApplyFilter.

Contoh

Menerapkan filter dengan menggunakan makro

Makro berikut ini berisi kumpulan tindakan, yang masing-masing memfilter rekaman untuk formulir Daftar Telepon Pelanggan. Makro ini memperlihatkan penggunaan tindakan ApplyFilter, ShowAllRecords, dan GoToControl. Juga memperlihatkan penggunaan kondisi untuk menentukan tombol opsi aktifkan/nonaktifkan yang mana dalam grup opsi yang telah dipilih pada formulir. Setiap baris tindakan terkait dengan tombol opsi aktifkan/nonaktifkan yang memilih kumpulan rekaman dimulai dengan A, B, C, dan seterusnya, atau semua rekaman. Makro ini harus terhubung ke acara AfterUpdate dari grup opsi CompanyNameFilter.

Kondisi

Tindakan

Argumen: Pengaturan

Komentar

[CompanyNameFilters]=1

ApplyFilter

Where Condition: [CompanyName] Like "[AÀÁÂÃÄ]*"

Memfilter nama perusahaan yang dimulai dengan, À, Á, Â, Ã, atau Ä.

[CompanyNameFilters]=2

ApplyFilter

Where Condition: [CompanyName] Like "B*"

Memfilter nama perusahaan yang dimulai dengan B.

[CompanyNameFilters]=3

ApplyFilter

Where Condition: [CompanyName] Like "[CÇ]*"

Memfilter nama perusahaan yang dimulai dengan C atau Ç.

Baris ...Tindakan untuk D sampai Y memiliki format yang sama seperti A sampai C ...

[CompanyNameFilters]=26

ApplyFilter

Where Condition: [CompanyName] Like "[ZÆØÅ]*"

Memfilter nama perusahaan yang dimulai dengan Z, Æ, Ø, atau Å.

[CompanyNameFilters]=27

ShowAllRecords

Memperlihatkan semua rekaman.

[RecordsetClone].[RecordCount]>0

GoToControl

Nama Kontrol: CompanyName

Jika rekaman dikembalikan untuk huruf yang dipilih, pindahkan fokus ke kontrol CompanyName.


Kembangkan keterampilan Anda
Jelajahi pelatihan
Dapatkan fitur baru terlebih dahulu
Gabung ke Office Insiders

Apakah informasi ini bermanfaat?

Terima kasih atas umpan balik Anda!

Terima kasih atas umpan balik Anda! Sepertinya menghubungkan Anda ke salah satu agen dukungan Office kami akan sangat membantu.

×