Pada Access, modul berisi deklarasi, pernyataan, prosedur atau fungsi yang diprogram dengan cara yang terstruktur dan sistematis sebagai sebuah kesatuan yang terpadu. Ada dua jenis modul, yaitu modul kelas atau class module dan modul standar atau standard module. Class module biasanya ada di form atau report, dan biasanya berisi prosedur yang khusus diprogram untuk form atau report itu. Oleh karena itu, class module sering disebut modul form (bila berada di form) dan modul report (bila berada di report). Standard module berisi prosedur umum yang tidak berhubungan dengan atau dapat digunakan pada objek yang lain, seperti query, form, dan report. Standard module tercantum di bagian Modules pada Navigation pane.
Cara Membuat Module
Untuk membuat module, pilihlah tab Create dan pilih Modules pada grup Other. Access akan menampilkan Microsoft Visual Basic (VB) Editor seperti gambar di bawah ini:
Setelah itu, salinlah kode VBA berikut ini ke dalam editor:
Option Compare Database digunakan untuk membuat perbandingan berdasarkan posisi relatif karakter (string) sesuai dengan urutan yang ditentukan ketika database dikompilasi, di mana sifatnya adalah case insensitive. Misalnya, karakter “A” akan sama dengan “a”. Hal ini berbeda bila Option Compare Binary, di mana karakter “A” tidak akan sama dengan “a”.
Option Explicit mensyaratkan semua variabel dan konstanta harus dideklarasikan (ditetapkan) terlebih dahulu sebelum menggunakannya. Variabel dapat dideklarasikan melalui pernyataan dim atau static dalam sebuah prosedur dan perintah global atau private di bagian deklarasi. Dengan mensyaratkan deklarasi variabel ini, VBA dapat mendeteksi adanya kesalahan seperti kesalahan ketik ketika kita mengkompilasi atau ketika kode gagal untuk dijalankan. Mampu mendeteksi kesalahan saat kode dikompilasi dan bukan menampilkan kesalahan saat kode telah dikompilasi adalah bagian mendasar dari menulis kode yang lebih baik.
Public Enum PeriodeTanggal berarti VBA akan mendeklarasikan sebuah daftar (enumerasi) dengan tipe data yang bernama PeriodeTanggal, dalam hal ini ada 16 item seperti di atas.
Pada contoh gambar di samping, saat kita mengetikkan fungsi CekPeriodeTanggal, VBA akan menampilkan intellisense berupa sebuah daftar sebanyak 16 item yang akan kita pilih sebagai variabel. Nilai variabel itu berupa bilangan bulat, bisa negatif atau positif. Dalam contoh di atas, nilainya terletak antara 0 dan 15. Untuk Public Enum PeriodeTahun, penjelasannya sama dengan Public Enum PeriodeTanggal.
Membuat Modul Sederhana
Sebagai langkah awal, kita akan membuat modul sederhana yang bisa diaplikasikan ke berbagai form. Modul sederhana yang akan kita buat di bawah ini awalnya dibuat dengan menggunakan Button (Form Control) yang terletak di tab Design grup Controls dengan bantuan Use Control Wizards. Modul ini awalnya berada di form yang merupakan bagian dari event procedure sub command On Click.
Function Awal()
Setelah tombol (button) ini selesai dibuat dan berfungsi dengan benar, baru dipindahkan ke Modules.
Cara Membuat Module
Untuk membuat module, pilihlah tab Create dan pilih Modules pada grup Other. Access akan menampilkan Microsoft Visual Basic (VB) Editor seperti gambar di bawah ini:
Setelah itu, salinlah kode VBA berikut ini ke dalam editor:
Option Compare Database Option Explicit Public Enum PeriodeTanggal TglAwalthn = 0 TglAkhirThn = 1 TglAwalBulan = 2 TglAkhirBulan = 3 TglAwalBulanSebelum = 4 TglAkhirBulanSebelum = 5 TglAwalBulanBerikut = 6 TglAkhirBulanBerikut = 7 TglAwalThnSebelum = 8 TglAkhirThnSebelum = 9 TglAwalBulanThnSebelum = 10 TglAkhirBulanThnSebelum = 11 TglAwalThnBerikut = 12 TglAkhirThnBerikut = 13 TglAwalBulanThnBerikut = 14 TglAkhirBulanThnBerikut = 15 End Enum Public Enum PeriodeTahun TahunBerjalan = 0 TahunSebelum = 1 TahunBerikut = 2 End Enum
Option Compare Database digunakan untuk membuat perbandingan berdasarkan posisi relatif karakter (string) sesuai dengan urutan yang ditentukan ketika database dikompilasi, di mana sifatnya adalah case insensitive. Misalnya, karakter “A” akan sama dengan “a”. Hal ini berbeda bila Option Compare Binary, di mana karakter “A” tidak akan sama dengan “a”.
Option Explicit mensyaratkan semua variabel dan konstanta harus dideklarasikan (ditetapkan) terlebih dahulu sebelum menggunakannya. Variabel dapat dideklarasikan melalui pernyataan dim atau static dalam sebuah prosedur dan perintah global atau private di bagian deklarasi. Dengan mensyaratkan deklarasi variabel ini, VBA dapat mendeteksi adanya kesalahan seperti kesalahan ketik ketika kita mengkompilasi atau ketika kode gagal untuk dijalankan. Mampu mendeteksi kesalahan saat kode dikompilasi dan bukan menampilkan kesalahan saat kode telah dikompilasi adalah bagian mendasar dari menulis kode yang lebih baik.
Public Enum PeriodeTanggal berarti VBA akan mendeklarasikan sebuah daftar (enumerasi) dengan tipe data yang bernama PeriodeTanggal, dalam hal ini ada 16 item seperti di atas.
Pada contoh gambar di samping, saat kita mengetikkan fungsi CekPeriodeTanggal, VBA akan menampilkan intellisense berupa sebuah daftar sebanyak 16 item yang akan kita pilih sebagai variabel. Nilai variabel itu berupa bilangan bulat, bisa negatif atau positif. Dalam contoh di atas, nilainya terletak antara 0 dan 15. Untuk Public Enum PeriodeTahun, penjelasannya sama dengan Public Enum PeriodeTanggal.
Membuat Modul Sederhana
Sebagai langkah awal, kita akan membuat modul sederhana yang bisa diaplikasikan ke berbagai form. Modul sederhana yang akan kita buat di bawah ini awalnya dibuat dengan menggunakan Button (Form Control) yang terletak di tab Design grup Controls dengan bantuan Use Control Wizards. Modul ini awalnya berada di form yang merupakan bagian dari event procedure sub command On Click.
Function Awal()
'------------------------------------------ ' Awal, arahkan ke awal record '------------------------------------------ On Error GoTo Awal_Err DoCmd.RunCommand acCmdRecordsGoToFirst Awal_Exit: Exit Function Awal_Err: MsgBox Error$ Resume Awal_Exit End Function
Setelah tombol (button) ini selesai dibuat dan berfungsi dengan benar, baru dipindahkan ke Modules.
Comments
Post a Comment