Anda dapat menggunakan tindakan makro SearchForRecord dalam database desktop Access untuk mencari rekaman tertentu dalam tabel, kueri, formulir, atau laporan.
Pengaturan
Tindakan makro SearchForRecord memiliki argumen berikut.
Argumen tindakan |
Deskripsi |
||||||||||
Tipe Objek |
Masukkan atau pilih tipe objek database yang Anda cari. Anda bisa memilih Tabel, Kueri, Formulir, atau Laporan. |
||||||||||
Nama Objek |
Masukkan atau pilih objek tertentu yang berisi catatan untuk dicari. Daftar turun bawah memperlihatkan semua objek database tipe yang Anda pilih untuk argumen Tipe Objek . |
||||||||||
Merekam |
Tentukan titik awal dan arah pencarian.
|
||||||||||
Where Condition |
Masukkan kriteria untuk pencarian menggunakan sintaks yang sama seperti klausul SQL WHERE, hanya tanpa kata "WHERE". Misalnya: Description = "Beverages" Untuk membuat kriteria yang menyertakan nilai dari kotak teks pada formulir, Anda harus membuat ekspresi yang menggabungkan bagian pertama kriteria dengan nama kotak teks yang berisi nilai yang akan dicari. Misalnya, kriteria berikut ini akan mencari bidang Deskripsi untuk nilai dalam kotak teks bernama txtDescription pada formulir bernama frmCategories. Perhatikan tanda sama dengan (=) di awal ekspresi, dan penggunaan tanda kutip tunggal (') di salah satu sisi referensi kotak teks: ="Description = '" & Forms![frmCategories]![txtDescription] & "'" |
Keterangan
-
Dalam kasus di mana lebih dari satu rekaman cocok dengan kriteria dalam argumen Where Condition , faktor berikut menentukan rekaman mana yang ditemukan:
-
Pengaturan argumen Rekam Lihat tabel di bagian Pengaturan untuk informasi selengkapnya tentang argumen Rekaman .
-
Susunan urutan rekaman Misalnya, jika argumen Rekaman diatur ke Pertama, mengubah susunan urutan rekaman mungkin mengubah rekaman mana yang ditemukan.
-
-
Objek yang ditentukan dalam argumen Nama Objek harus terbuka sebelum tindakan ini dijalankan. Jika tidak, terjadi kesalahan.
-
Jika kriteria dalam argumen Where Condition tidak terpenuhi, tidak ada kesalahan yang terjadi dan fokus tetap berada pada rekaman saat ini.
-
Ketika mencari rekaman sebelumnya atau berikutnya, pencarian tidak "membungkus" ketika mencapai akhir data. Jika tidak ada rekaman lebih lanjut yang cocok dengan kriteria, tidak ada kesalahan yang terjadi dan fokus tetap berada pada catatan saat ini. Untuk mengonfirmasi bahwa kecocokan ditemukan, Anda bisa memasukkan kondisi untuk tindakan berikutnya, dan membuat kondisi sama seperti kriteria dalam argumen Where Condition .
-
Untuk menjalankan tindakan SearchForRecord dalam modul VBA, gunakan metode SearchForRecord objek DoCmd .
-
Tindakan makro SearchForRecord mirip dengan tindakan makro FindRecord, tetapi SearchForRecord memiliki fitur pencarian yang lebih canggih. Tindakan makro FindRecord terutama digunakan untuk menemukan string, dan menduplikasi fungsionalitas kotak dialog Temukan . Tindakan makro SearchForRecord menggunakan kriteria yang lebih mirip dengan filter atau kueri SQL. Daftar berikut ini menunjukkan beberapa hal yang bisa Anda lakukan dengan tindakan makro SearchForRecord :
-
Anda bisa menggunakan kriteria kompleks dalam argumen Where Condition , seperti
-
Deskripsi = "Minuman" dan CategoryID = 11
-
Anda bisa merujuk ke bidang yang berada di sumber rekaman formulir atau laporan tetapi tidak ditampilkan pada formulir atau laporan. Dalam contoh sebelumnya, baik Description maupun CategoryID tidak harus ditampilkan pada formulir atau laporan agar kriteria berfungsi.
-
Anda dapat menggunakan operator logika, seperti <, >, AND, OR, dan BETWEEN. Tindakan FindRecord hanya cocok dengan string yang sama, dimulai dengan, atau berisi string yang sedang dicari.
Contoh
Makro berikut ini terlebih dahulu membuka tabel Kategori menggunakan tindakan OpenTable . Makro kemudian menggunakan tindakan makro SearchForRecord untuk menemukan rekaman pertama dalam tabel di mana bidang Deskripsi sama dengan "Minuman."
Tindakan |
Argumen |
OpenTable |
Nama Tabel: Kategori Tampilan: Lembar Data Mode Data: Mengedit |
SearchForRecord |
Tipe Objek: Tabel Nama Objek: Kategori Catatan: Pertama Where Condition: Description = "Beverages" |