Tutorial ini berasumsi pembaca sudah paham bagaimana
mengatur Property pada control userform. Untuk lebih jelasnya, silahkan
download file contohnya disini.
Control ListBox dan ComboBox adalah 2 control yang paling
sering digunakan pada sebuah aplikasi sebagai fasilitas yang diberikan kepada user
untuk memilih beberapa pilihan. Contoh kasus yang sering terjadi pada saat kita
menggunakan kedua control tersebut pada Userform adalah menampilkan nilai pada
kolom-kolom disebelahnya sesuai nilai yang terpilih khusus nya pada ListBox
ataupun ComboBox yang berkolom lebih dari satu atau Multi-columns. Jadi ingat
ya ? kata kunci nya adalah kolom nya lebih dari satu :).
Nah, kasus tersebut dapat diselesaikan dengan menggunakan
property Column yang ada pada control ListBox dan ComboBox. Syntax atau
penulisan property Column adalah Object.Column. Object dalam hal ini mengacu
pada control ListBox atau ComboBox, dan argument Column adalah nilai indeks
kolom pada Tabel atau Database. Kolom pertama nilai Indeks nya 0 dan kolom
berikutnya adalah 1,2,3 dan seterus nya sesuai banyaknya kolom pada database.
Contoh nya seperti ini :
Dibawah ini adalah database Siswa yang terdiri dari 4 Kolom. Kolom pertama
adalah Nomer Induk Siswa, Kolom kedua adalah Nama Siswa, Kolom ketiga adalah
Tempat Lahir dan ke empat adalah Tanggal Lahir.
![]() |
Database Siswa |
Karena sifatnya yang unik maka kita menjadikan kolom pertama
yaitu Nomer Induk Siswa sebagai kolom acuan nya (atau Primary Key) dan mengatur
property BoundColumn nya ke angka 1, dan ColumnCount nya ke angka 4 sesuai
banyak kolom dalam Database tersebut.
Nilai property lain yang harus diatur adalah RowSource. Pada
file contoh, property RowSource diatur mengacu pada Range “Data”.
![]() |
Property Bound dan Column Count |
Jadi pada saat aplikasi dijalankan, user akan memilih nilai
Nomer Induk Siswa pada ComboBox atau ListBox kemudian nilai pada kolom Nama,
Tempat Lahir dan Tanggal Lahir akan muncul pada masing-masing TextBox.
Penjelasan skrip nya adalah sebagai berikut :
Untuk Combobox skrip nya diletak kan pada Event ComboBox
Change. Jadi tiap kali nilai ComboBox berubah, nilai pada kolom pertama setelah
kolom acuan (kolom Nama) dijadikan nilai TextBox txtNama (skrip Me.txtNama.Value
= Me.ComboBox1.Column(1)).
Begitu juga untuk nilai kolom kedua setelah kolom acuan (kolom
Tempat Lahir) dijadikan nilai TextBox txtTptLahir(skrip Me.txtTptLahir.Value =
Me.ComboBox1.Column(2)).
Untuk kolom Tanggal Lahir (kolom ke 3 setelah kolom NIS)
skripnya ditambahkan fungsi Format untuk merubah nilai String menjadi format
tanggal Medium (Skrip Me.txtTglLahir.Value = Format(Me.ComboBox1.Column(3),
"Medium Date"))
Hal yang sama juga berlaku untuk control ListBox yang
kebetulan mempunyai property Column. Untuk ListBox, skrip diletak kan pada
event Click.
Pada screenshot diatas terlihat Indeks Column nya dimulai
dari angka 1 diatur ke masing-masing TextBox.
Semoga tutorial ini bermanfaat.
Wassalam.