Ketika membuat database baru, Anda biasanya memulai dengan membuat beberapa objek database seperti tabel, formulir, dan laporan. Pada akhirnya, akan ada situasi ketika Anda harus menambahkan beberapa pemrograman untuk mengotomatiskan proses tertentu dan menyatukan objek database bersama-sama. Artikel ini membantu mengarahkan Anda ke alat pemrograman di Access.
Dalam artikel ini
Apa itu pemrograman?
Dalam Access, pemrograman adalah proses menambahkan fungsionalitas ke database Anda dengan menggunakan makro Access atau kode Visual Basic for Applications (VBA). Misalnya, Anda telah membuat sebuah formulir dan laporan, kemudian ingin menambahkan tombol perintah pada formulir yang akan membuka laporan ketika diklik. Dalam hal ini, pemrograman adalah proses membuat makro atau prosedur VBA, lalu mengatur properti kejadian OnClick tombol perintahnya sehingga ketika diklik, makro atau prosedur tersebut akan berjalan. Untuk operasi sederhana, seperti membuka laporan, Anda dapat menggunakan Panduan Tombol Perintah untuk melakukan semua pekerjaan, atau dapat menonaktifkan panduan dan melakukan pemrograman sendiri.
Catatan:Â Banyak program Microsoft Office menggunakan istilah "makro" untuk merujuk ke kode VBA. Ini bisa membingungkan bagi pengguna Access karena, dalam Access, istilah "makro" merujuk ke kumpulan tindakan makro bernama yang bisa Anda kumpulkan dengan menggunakan Pembuat Makro. Access tindakan makro hanya mewakili subset perintah yang tersedia di VBA. Pembuat Makro memberikan antarmuka yang lebih terstruktur daripada Editor Visual Basic, memungkinkan Anda menambahkan pemrograman ke kontrol dan objek tanpa harus mempelajari kode VBA. Anda harus ingat bahwa dalam artikel Bantuan Access , makro Access disebut sebagai makro. Sebaliknya, kode VBA disebut sebagai VBA, kode, fungsi, atau prosedur. Kode VBA disertakan dalam modul kelas (yang merupakan bagian dari formulir atau laporan individu, dan biasanya berisi kode untuk objek tersebut saja) dan dalam modul (yang tidak terhubung ke objek tertentu dan biasanya berisi kode "global" yang dapat digunakan di seluruh database) .
Objek (seperti formulir dan laporan) dan kontrol (seperti tombol perintah dan kotak teks) memiliki berbagai properti kejadian yang dapat digunakan untuk melampirkan makro atau prosedur. Setiap properti kejadian berhubungan dengan kejadian tertentu, seperti mengklik mouse, membuka formulir, atau mengubah data dalam kotak teks. Kejadian juga dapat dipicu oleh faktor di luar Access, seperti kejadian sistem, atau oleh makro atau prosedur yang dilampirkan ke acara lain. Database dapat menjadi rumit jika ada banyak makro atau prosedur yang ditambahkan pada beberapa properti kejadian banyak objek, tetapi pada umumnya, Anda dapat memperoleh hasil yang diinginkan dengan pemrograman yang sangat singkat.
Apakah saya harus menggunakan makro, atau kode VBA?
Keputusan untuk menggunakan makro, VBA, atau keduanya bergantung sepenuhnya pada bagaimana Anda akan menyebarkan atau mendistribusikan database. Misalnya, jika database disimpan di komputer dan Anda merupakan satu-satunya pengguna, dan jika lebih suka menggunakan kode VBA, Anda dapat memutuskan untuk menggunakan VBA untuk melakukan sebagian besar tugas pemrograman. Namun, jika ingin berbagi database dengan orang lain dengan menempatkannya di server file, Anda dapat menghindari penggunaan VBA untuk pertimbangan keamanan.
Pertimbangkan keputusan untuk menggunakan makro atau kode VBA berdasarkan dua hal ini: keamanan dan fungsi yang diinginkan. Keamanan akan menjadi masalah karena VBA dapat digunakan untuk membuat kode yang akan membahayakan keamanan data, atau dapat merusak file di komputer. Saat menggunakan database yang dibuat oleh seseorang selain Anda sendiri, aktifkan kode VBA hanya jika Anda mengetahui bahwa database tersebut berasal dari sumber yang tepercaya. Ketika membuat database yang akan digunakan oleh orang lain, cobalah untuk tidak menyertakan alat pemrograman yang mengharuskan pengguna memberikan status tepercaya secara khusus pada database. Teknik umum untuk mengatur agar pengguna tidak perlu memercayai database Anda dapat dilihat nanti di bagian ini.
Untuk membantu memastikan keamanan database, cobalah untuk menggunakan makro sesuai kebutuhan saja dan gunakan pemrograman VBA hanya untuk operasi yang tidak dapat dijalankan dengan tindakan makro. Selain itu, hanya gunakan tindakan makro yang tidak memerlukan izin status tepercaya bagi database untuk dapat berjalan. Membatasi penggunaan tindakan makro dengan cara ini akan meyakinkan pengguna bahwa tidak ada pemrograman dalam database tersebut yang dapat merusak data atau file lain di komputer mereka.
Pertimbangan makro
Access berisi banyak tindakan makro baru yang memungkinkan Anda menyusun makro yang lebih andal daripada yang dapat dibuat menggunakan versi Accessyang lebih lama. Misalnya, Anda kini dapat membuat dan menggunakan variabel sementara global dengan tindakan makro, serta dapat menangani kesalahan dengan lebih mudah menggunakan tindakan makro penanganan kesalahan baru. Dalam versi Accessyang lebih lama, jenis fitur ini hanya tersedia dengan menggunakan VBA. Selain itu, makro dapat disematkan secara langsung ke dalam properti kejadian objek atau kontrol. Makro yang disematkan akan menjadi bagian dari objek atau kontrol dan tetap bersama objek atau kontrol tersebut jika dipindahkan atau disalin.
Makro menyediakan cara yang mudah untuk menangani berbagai tugas pemrograman, seperti membuka dan menutup formulir, serta menjalankan laporan. Anda dapat dengan cepat dan mudah menyatukan objek database (formulir, laporan, dan lain-lain) yang telah dibuat karena hanya sedikit sintaks yang perlu diingat. Argumen untuk setiap tindakan ditampilkan dalam Pembuat Makro.
Selain peningkatan keamanan dan kemudahan penggunaan yang disediakan oleh makro, Anda harus menggunakan makro untuk melakukan beberapa tugas berikut:
-
Menetapkan tindakan atau serangkaian tindakan pada tombol. Tindakan ini mengharuskan pembuatan grup makro bernama AutoKeys.
-
Melakukan tindakan atau serangkaian tindakan saat database dibuka untuk kali pertama. Tindakan ini mengharuskan pembuatan makro bernama AutoExec.
Catatan:Â Makro AutoExec akan berjalan sebelum makro atau kode VBA lainnya, bahkan saat Anda telah menetapkan formulir mulai dalam kotak dialog Opsi Access dan melampirkan makro atau kode VBA pada kejadian OnOpen atau OnLoad formulir tersebut.
Untuk informasi selengkapnya tentang cara membuat makro, lihat bagian Memahami makro.
Pertimbangan VBA
Gunakan pemrograman VBA, bukan makro, jika ingin melakukan salah satu hal berikut:
-
Gunakan fungsi bawaan, atau buat fungsi Anda sendiri   Access mencakup banyak fungsi bawaan, seperti fungsi IPmt , yang menghitung pembayaran bunga. Anda dapat menggunakan fungsi bawaan ini untuk melakukan perhitungan tanpa harus membuat ekspresi yang rumit. Dengan kode VBA, Anda juga dapat membuat fungsi sendiri untuk melakukan perhitungan yang melampaui kemampuan ekspresi atau untuk mengganti ekspresi yang kompleks. Selain itu, Anda dapat menggunakan fungsi yang dibuat dalam ekspresi untuk menerapkan operasi umum ke lebih dari satu objek.
-
Membuat atau memanipulasi objek    Pada umumnya, Anda akan menyadari bahwa membuat dan mengubah objek dalam tampilan Desain objek tersebut dapat terasa lebih mudah. Namun, dalam beberapa situasi, Anda mungkin ingin memanipulasi definisi objek dalam kode. Dengan VBA, semua objek dalam database dapat dimanipulasi, selain database itu sendiri.
-
Melakukan tindakan tingkat sistem    Anda dapat melakukan tindakan RunApp dalam makro untuk menjalankan program lain (seperti Microsoft Excel) dari dalam Access, tetapi tidak dapat menggunakan makro untuk melakukan banyak hal lain di luar Access. Dengan VBA, Anda dapat melihat apakah suatu file ada di komputer, menggunakan Otomatisasi atau Pertukaran Data Dinamik (DDE) untuk berkomunikasi dengan program berbasis Microsoft Windows lainnya, seperti Excel, serta memanggil fungsi dalam pustaka tautan dinamis Windows (DLLs).
-
Memanipulasi rekaman satu per satu    Anda dapat menggunakan VBA untuk menelusuri kumpulan rekaman, satu rekaman dalam satu waktu, dan melakukan operasi pada setiap rekaman. Sebaliknya, makro berfungsi dengan seluruh kumpulan rekaman secara bersamaan.
Menggunakan Panduan Tombol Perintah untuk melakukan tugas pemrograman umum
Jika akan menambahkan tombol perintah ke formulir, Panduan Tombol Perintah dapat membantu Anda memulai pemrograman. Panduan ini akan membantu Anda membuat tombol perintah yang melakukan tugas tertentu. Dalam file Access (.accdb), panduan membuat makro yang disematkan dalam properti OnClick tombol perintah. Dalam file .mdb atau .adp, panduan akan membuat kode VBA, karena makro yang disematkan tidak tersedia dalam format file tersebut. Dalam kasus lain, Anda kemudian dapat mengubah atau menyempurnakan makro atau kode VBA agar lebih sesuai dengan kebutuhan.
-
Di Panel Navigasi, klik kanan formulir yang ingin Anda beri tombol perintah, lalu klik Tampilan Desain.
-
Pada tab Desain Formulir , klik panah bawah untuk menampilkan galeri Kontrol , lalu pastikan bahwa Gunakan Panduan Kontrol dipilih.
-
Pada tab Desain Formulir , di galeri Kontrol , klik Tombol.
-
Dalam kisi desain formulir, klik tempat yang diinginkan untuk meletakkan tombol perintah.
Panduan Tombol Perintah akan dimulai.
-
Di halaman pertama panduan, klik setiap kategori dalam daftar Kategori untuk melihat tindakan mana yang dapat diprogram panduan untuk dijalankan oleh tombol perintah. Dalam daftar Tindakan, pilih tindakan yang diinginkan, lalu klik Berikutnya.
-
Klik opsi Teks atau opsi Gambar, tergantung pada hal yang ingin ditampilkan pada tombol perintah.
-
Jika ingin menampilkan teks, edit teks dalam kotak di samping opsi Teks.
-
Jika ingin menampilkan gambar, panduan akan menyarankannya dalam daftar. Jika Anda ingin memilih gambar lain, pilih kotak centang Perlihatkan Semua Gambar untuk menampilkan daftar semua gambar tombol perintah yang Access sediakan, atau klik Telusuri untuk memilih gambar yang disimpan di tempat lain.
Klik Berikutnya.
-
-
Masukkan nama yang bermakna untuk tombol perintah. Langkah ini bersifat opsional, dan nama ini tidak akan ditampilkan di tombol perintah. Namun, merupakan ide yang bagus untuk memasukkan nama yang bermakna sehingga ketika Anda perlu merujuk ke tombol perintah suatu saat nanti (misalnya, jika Anda mengatur urutan tab untuk kontrol pada formulir), tombol perintah akan menjadi lebih mudah dibedakan. Jika fungsi tombol perintah adalah menutup formulir, misalnya, Anda dapat menamainya dengan cmdClose atau CommandClose.
-
Klik Selesai.
Access menempatkan tombol perintah pada formulir.
-
Jika ingin melihat apa saja yang telah disiapkan oleh panduan, ikuti langkah-langkah opsional ini:
-
Jika lembar properti belum ditampilkan, tekan F4 untuk menampilkannya.
-
Klik tab Kejadian dalam lembar properti.
-
Dalam kotak properti Saat Diklik , klik tombol Susun .
Access memulai Pembuat Makro dan menampilkan makro yang dibuat panduan. Anda dapat mengedit makro jika diinginkan (untuk informasi selengkapnya tentang cara mengedit makro, lihat bagian Memahami makro). Setelah selesai, pada tab Desain Makro , dalam grup Tutup , klik Tutup untuk menutup Penyusun Makro. Jika Access meminta Anda menyimpan perubahan dan memperbarui properti, klik Ya untuk menyimpan perubahan atau Tidak untuk menolak perubahan.
-
-
Pada tab Desain Formulir , dalam grup Tampilan , klik Tampilan, lalu klik Tampilan Formulir. Klik tombol perintah baru untuk mengonfirmasi bahwa tombol berfungsi seperti yang diinginkan.
Memahami makro
Makro adalah alat yang memungkinkan Anda mengotomatiskan tugas dan menambahkan fungsionalitas pada formulir, laporan, dan kontrol. Misalnya, jika Anda menambahkan tombol perintah pada formulir, hubungkan properti kejadian OnClick tombol ke makro berisi perintah yang perlu dilakukan oleh tombol tersebut setiap kali diklik.
Sangat membantu untuk menganggap makro Access sebagai bahasa pemrograman yang disederhanakan di mana Anda membuat kode dengan menyusun daftar tindakan untuk dijalankan. Saat membuat makro, Anda memilih setiap tindakan dari daftar menurun, lalu mengisi informasi yang diperlukan untuk setiap tindakan. Makro memungkinkan Anda menambahkan fungsionalitas pada formulir, laporan, dan kontrol tanpa perlu menulis kode dalam modul VBA. Makro memberikan subset dari perintah yang tersedia di VBA, dan sebagian besar orang merasa lebih mudah untuk membuat makro daripada menulis kode VBA.
Buat makro menggunakan Pembuat Makro, yang diperlihatkan dalam ilustrasi berikut.
Untuk menampilkan Pembuat Makro:
-
Pada tab Buat, dalam grup Makro & Kode, klik Makro.
Memahami kode VBA
Seperti makro, VBA memungkinkan Anda menambahkan otomatisasi dan fungsionalitas lain ke aplikasi Access Anda. Anda dapat memperluas VBA menggunakan kontrol pihak ketiga, juga dapat menulis fungsi dan prosedur sendiri sesuai kebutuhan.
Cara cepat untuk memulai pemrograman VBA adalah dengan terlebih dahulu menyusun makro Access lalu mengonversinya menjadi kode VBA. Instruksi untuk melakukan tindakan ini disertakan pada bagian Mengonversi makro ke kode VBA. Fitur ini akan membuat modul VBA baru yang menjalankan operasi yang sama pada makro. Fitur ini juga membuka Editor Visual Basic sehingga Anda dapat mulai mengubah prosedur. Ketika bekerja di Visual Basic Editor, Anda dapat mengklik kata kunci dan menekan F1 untuk memulai Access Bantuan Pengembang dan mempelajari selengkapnya tentang setiap kata kunci. Anda kemudian dapat menjelajahi Bantuan Pengembang Access dan menemukan perintah baru untuk membantu Anda melakukan tugas pemrograman yang diinginkan.
Mengonversi makro ke kode VBA
Anda dapat menggunakan Access untuk mengonversi makro menjadi modul VBA atau modul kelas secara otomatis. Anda dapat mengonversi makro yang dilampirkan ke formulir atau laporan, baik makro yang ada sebagai objek terpisah maupun makro yang disematkan. Anda juga dapat mengonversi makro global yang tidak dilampirkan ke formulir atau laporan tertentu.
Mengonversi makro yang dilampirkan ke formulir atau laporan
Proses ini mengonversi makro apa pun ke VBA yang dirujuk oleh (atau yang disematkan dalam) formulir atau laporan (atau salah satu kontrolnya) dan menambahkan kode VBA tersebut ke modul kelas formulir atau laporan. Modul kelas menjadi bagian dari formulir atau laporan dan akan tetap disertakan ketika formulir atau laporan dipindahkan atau disalin.
-
Di Panel Navigasi, klik kanan formulir atau laporan, lalu klik Tampilan Desain.
-
Pada tab Desain Formulir , dalam grup Alat , klik Konversi Makro Formulir Menjadi Visual Basic atau Konversi Makro Laporan Ke Visual Basic.
-
Dalam kotak dialog Konversi makro formulir atau Konversi makro laporan , pilih apakah Anda ingin Access menambahkan kode penanganan kesalahan ke fungsi yang dihasilkannya. Selain itu, jika memiliki komentar dalam makro, pilih apakah komentar perlu disertakan sebagai komentar dalam fungsi. Klik Konversi untuk melanjutkan.
Jika tidak ada modul kelas untuk formulir atau laporan, Access membuatnya dan menambahkan prosedur ke modul untuk setiap makro yang terkait dengan formulir atau laporan. Access juga mengubah properti kejadian formulir atau laporan sehingga mereka menjalankan prosedur VBA baru dan bukan makro.
-
Untuk menampilkan dan mengedit kode VBA:
-
Saat formulir atau laporan masih terbuka dalam tampilan Desain, jika lembar properti belum ditampilkan, tekan F4 untuk menampilkannya.
-
Pada tab Kejadian dari lembar properti, klik kotak properti apa pun yang menampilkan [Prosedur Kejadian], lalu klik tombol susun . Untuk menampilkan properti kejadian bagi kontrol tertentu, klik kontrol untuk memilihnya. Untuk menampilkan properti kejadian seluruh formulir atau laporan, pilih Formulir atau Laporan dari daftar menurun di bagian atas lembar properti.
Access membuka Visual Basic Editor dan menampilkan prosedur kejadian dalam modul kelasnya. Anda dapat menggulir ke atas atau ke bawah untuk menampilkan prosedur lain yang berada dalam modul kelas yang sama.
-
Mengonversi makro global
-
Di Panel Navigasi, klik kanan makro yang ingin dikonversi, lalu klik Tampilan Desain.
-
Pada tab Desain Makro , dalam grup Alat , klik Konversi Makro Menjadi Visual Basic.
-
Dalam kotak dialog Konversi Makro, pilih opsi yang diinginkan, lalu klik Konversi.
Access mengonversi makro dan membuka Visual Basic Editor.
-
Untuk menampilkan dan mengedit kode VBA:
-
Dalam Editor Visual Basic, jika panel Penjelajah Proyek tidak ditampilkan, pada menu Tampilan, klik Penjelajah Proyek.
-
Perluas poin di bawah nama database yang sedang dikerjakan.
-
Di bawah Modul, klik ganda nama makro Makro- yang Dikonversi modul.
Editor Visual Basic akan membuka modul.
-
Melampirkan fungsi VBA pada properti kejadian
Saat makro global dikonversi menjadi VBA, kode VBA akan diletakkan dalam modul standar. Tidak seperti modul kelas, modul standar bukanlah bagian dari formulir atau laporan. Anda mungkin ingin menghubungkan fungsi dengan properti kejadian pada formulir, laporan, atau kontrol sehingga kode dapat berjalan dengan tepat pada waktu dan tempat yang diinginkan. Untuk melakukannya, Anda dapat menyalin kode VBA ke dalam modul kelas dan menghubungkannya dengan properti kejadian, atau membuat panggilan khusus dari properti kejadian ke modul standar menggunakan prosedur berikut ini.
-
Dalam Editor Visual Basic, catat nama fungsi. Misalnya, jika mengonversi makro bernama MyMacro, fungsi akan bernama MyMacro().
-
Tutup Editor Visual Basic.
-
Di Panel Navigasi, klik kanan formulir atau laporan yang ingin Anda hubungkan dengan fungsi, lalu klik Tampilan Desain.
-
Klik kontrol atau bagian yang ingin dihubungkan dengan fungsi.
-
Jika lembar properti belum ditampilkan, tekan F4 untuk menampilkannya.
-
Pada tab Kejadian lembar properti, klik kotak properti kejadian yang ingin dihubungkan dengan fungsi.
-
Dalam kotak properti, ketik tanda sama dengan (=) diikuti dengan nama fungsi, misalnya =MyMacro() . Pastikan untuk menyertakan tanda kurung.
-
Simpan formulir atau laporan dengan mengklik Simpan di Bilah Alat Akses Cepat.
-
Di Panel Navigasi, klik ganda formulir atau laporan, lalu uji formulir atau laporan untuk melihat apakah kode berjalan sebagaimana mestinya.
Sekarang Anda mengetahui langkah-langkah dasar untuk menambahkan kode VBA ke database. Artikel ini hanya menguraikan dasar-dasar cara memulai; ada banyak buku referensi dan sumber online yang bagus untuk membantu mengembangkan keahlian pemrograman Anda.
Lihat Juga
Membuat makro antarmuka (UI) pengguna
Menjalankan makro Access menggunakan pintasan keyboard
Mengotomatisasi kejadian permulaan menggunakan makro
Membuat makro yang berjalan saat Anda membuka database