Cara Menampilkan Data di ListBox VBA Excel Menggunakan UserForm

ListBox merupakan salah satu Control Vba excel yang dapat digunakan untuk menampilkan informasi yang ada pada database. Menampilkan informasi data yang terdapat pada database sangatlah penting. Pengguna aplikasi dapat melihat dengan jelas data-data yang sudah ada dalam record database.

Melalui ListBox informasi yang disajikan dapat dipilih untuk melakukan operasi lainnya. Pada posting terdahulu kita sudah membahas tentang cara membuat Tombol Simpan VBA Excel menggunakan UserForm VBA Excel.
Tampilkan Data di ListBox di UserForm VBA Excel
Pada kesempatan ini lanjutannya, jadi masih pake aplikasi yang terdahulu kita rancang, saya akan mencoba menguraikan cara membuat ListBox yang dapat menampilkan data yang telah disimpan. ikuti langkah-langkah yang saya sajikan ini selangkah demi selangkah. Anda pasti bisa membuat Aplikasi..!!

Admin sangat menyarankan bagi yang sedang mempelajari kode Vba Excel agar membuat file contoh penerapan kode. Dengan membuat file contoh penerapan kode akan mempercepat memahami penggunaan dan fungsi dari kode yang diterapkan

Perlu diperhatikan.!!!

Kita menggunakan File yang telah kita rancang pada posting Tombol Simpan VBA Excel
Ikuti Posting Cara Membuat Range Dinamis


Langkah-langkah membuat ListBox :


  • Untuk Properties biarkan saja jangan di ubah baik Label maupun ListBox. Setelah siap di rancang, klik kanan pada UserForm pilih View Code dan Masukkan Kode dibawah ini, perhatikan gambar dibawah kode..!!
Sub ListDB()

With UserForm1.ListBox1
.ColumnCount = 5
.ColumnHeads = False
.ColumnWidths = "25;55;100;70;90"
.RowSource = "ListDB"
.MultiSelect = fmMultiSelectSingle
.BoundColumn = 0

End With
End Sub


Private Sub UserForm_Initialize()
Call ListDB
End Sub

Keterangan :
  1. ".ColumnCount = 5" kode ini berfungsi untuk menampilkan banyaknya jumlah kolom yang akan ditampilkan pada ListBox. Jika ingin mengurangi atau menambahkan kolom, anda tinggal mengubah angka 5 dengan angka jumlah kolom yang anda inginkan.
  2. ".ColumnHeads = False" Kode ini berfungsi untuk mencegah menampilkan Headers ListBox, Jika menginginkan Headers ListBox ditampilkan, maka nilai "False" digantikan dengan nilai "True".
  3. ".ColumnWidths = "25;55;100;70;90" " deretan angka puluhan pada kode ini berfungsi untuk menentukan tiap lebar tiap kolom, untuk menyesuaikannya kita dapat mengubah angka puluhan tersebut.
  4. ".RowSource = "ListDB" "merupakan baris Range yang dicari dan ditampilkan pada ListBox "ListDB" merupakan nama dari Range data yang terdapat pada Sheet untuk ditampilkan pada ListBox.
  5. ".MultiSelect = fmMultiSelectSingle" merupakan perintah agar data yang ditampilkan pada ListBox hanya dapat dipilih secara single saya, untuk pilihan lainnya dapat dilihat pada properties ListBox.
  6. "Call ListDB" merupakan kode perintah yang disingkat untuk memanggil kode Sub ListDB

  • Selesai, Agar saat setelah Tombol Simpan di klik langsung terlihat datanya pada ListBox kita tambahkan kode pada CmdSimpan dengan code berikut sebelum End Sub
Call ListDB

Demikian yang bisa saya share pada kesempatan ini tentang cara membuat ListBox agar menampilkan data dari Sheet. Semoga bermanfaat terutama bagi yang belajar otodidak seperti saya.


Semoga artikel ini bisa menjadi referensi dan informasi bagi yang sedang mempelajari Vba Excel pada tahap pemula.

Video Cara Menampilkan Data Sheet ke ListBox


Jika artikel ini dirasakan bermanfaat dan berguna mohon dapat memberikan komentar di kolom komentar yang tersedia dan mohon dapat share ke media sosial agar teman-teman lain yang memiliki hobi yang sama dapat mengetahui dan mempelajarinya juga.

Jika anda ingin menyampaikan pertanyaan, saran dan kritikan mohon dapat disampaikan dengan bijaksana pada kolom komentar yang tersedia dibawah artikel ini.

Dapatkan berbagai macam file contoh penerapan kode Vba serta Aplikasi Full Vba Excel tanpa Proteksi agar dapat dipelajari secara mandiri dengan menghubungi WhatsApp atau Telegram admin dengan nomor  0811-6822-023.


30 komentar untuk "Cara Menampilkan Data di ListBox VBA Excel Menggunakan UserForm"

  1. Assalamualaikum pak.. setelah di simpan tidak tampil di listbox nya pak..pdahal semua perintah nya udah sm..trus gmn cr nya tu pak..by andre

    BalasHapus
    Balasan
    1. Perlu diperhatikan.!!!
      1. Kita menggunakan File yang telah kita rancang pada posting Tombol Simpan VBA Excel
      2. Ikuti Posting Cara Membuat Range Dinamis

      Hapus
  2. Mas, bagaymana caranya menampilkan data pada sheet2 dengan listboxnya (userform) berada pada sheet1?

    BalasHapus
    Balasan
    1. bisa dikirimkan filenya ke email saya "senbakusen@gmail.com"
      karena penjelasan dengan kalimat tanpa file tidak bisa saya logikan.. Trimkasih sudah berkunjung..

      Hapus
  3. terima kasih atas pelajarannya......mau tanya mas, saya sudah coba listbox berhasil hanya pada saat input data tidak langsung keluar di data listbox , bagaimana ya masalahnya.....tks

    BalasHapus
    Balasan
    1. Trimakasih atas kunjungannya..
      Pertanyaannya..
      kenapa Data yg di input baru tidak muncul di listbox.?
      Jawabannya..
      1. Coba ceks kembali Range Dinamis yg dipakai untuk RowSource.. Bisa jadi data baru tidak dalam range yg dipakai
      2. Jika data baru ada dalam Range.. Bisa letakkan kode di Userform_Aktivate
      Call Nama_Kode_Listboxnya
      Contoh dari tutorial diatas
      Call ListDB 'Nama Sub ListDB
      Saya hanya menerka masalah...karena tidak melihat file atau screenshoot..
      Jika masih bermasalah.. kirimkan filenya ke email saya "senbakusen@gmail.com" saya bantu sebisa saya...

      Hapus
  4. Pak, saya kirim email ke senbakusen@gmail.com , tolong dibantu ya.

    BalasHapus
  5. pak gimana ya kalau mau menampilkan beberapa kolom saja dari tutorial yang bapa buat ini..
    terima kasih sebelumnya pak

    BalasHapus
    Balasan
    1. Jumlah kolom dapat dikurangi atau di tambahkan.....
      perhatikan pada kode Sub ListDB cari kode ".ColumnCount = 5" gantikan angka 5 sesuai denngan jumlah kolom yang ingin anda tampilkan.... selanjutnya Cari kode ".ColumnWidths = "25;55;100;70;90"" ubah lebar kolom sesuai dengan jumlah bnyak kolom...

      Hapus
  6. Pak bagaimana klo jumlah database 700000rb baris??saya coba listbox maksimal viewnya 18218 row

    BalasHapus
    Balasan
    1. Richo Briantara..!! Trimkasih atas kunjungannya ke blog Otodidak saya...
      Excel yang saya gunakan versi 2007.. Baris terakhir Excel 1048576. dan baris akhir tersebut bisa ditampilkan pada ListBox...

      Hapus
  7. Mohon bantuanya, saat mau run yang contoh form1 itu listboxnya menuju ke sheet1, trus form2 listboxny menuju sheet2.. Masalahnya saat di run terjadi eror, tp kalo kita buka sheet1nya dulu trus form1 di run, baru berhasil.. Jadi worksheetnya yang berhubungan dengan listbox itu harus di buka dulu lembar worksheetnya

    BalasHapus
    Balasan
    1. sulit saya menganalisa bila tidak melihat kode dan filenya..

      Hapus
  8. Pak, saya mau tanya klo misal saya mau isi form, dan di form itu ada banyak yg harus di isi, contoh ada NAMA Alamat Telp dll, Kemudian saya punya database dengan tabel nama alamat telp tersebut, yang saya inginkan ketika saya ketik nama di form data alamat telp dan yg lain ingin terisi otomatis sesuai data yg ada di database, trimakasi

    BalasHapus
  9. Pak, saya mau tanya klo misal saya mau isi form, dan di form itu ada banyak yg harus di isi, contoh ada NAMA Alamat Telp dll, Kemudian saya punya database dengan tabel nama alamat telp tersebut, yang saya inginkan ketika saya ketik nama di form data alamat telp dan yg lain ingin terisi otomatis sesuai data yg ada di database, trimakasi

    BalasHapus
    Balasan
    1. Bila data yang diinput sudah ada dalam database maka akan langsung mengambil data dari database sebagai isian pada textbox yang lainnya... begtu kah maksudnya...
      Jika begtu yang diinginkan kita dapat merujuk pada posting berikut ini
      http://www.senbakusen.com/2015/12/perintah-cari-otomatis-melalui-textbox.html
      kode pada posting tersebut pada tombol cari dapat digunakan pada masing-masing TextBox pada perintah atau event Enter atau Update
      Semoga membantu.. terimkasih atas kunjungannya

      Hapus
  10. Bang gimana kalo kita mau edit data yang ada pada list box tersebut ?thx bantuannya sangat membantu , kalo sempat jawab ertanyaan saya ke email : gbanunu@gmail.com
    terimakasih, mohon bantuannya..

    BalasHapus
    Balasan
    1. Untuk mengedit data yang tampil .. silahkan disearch di blog ini dengan kata kunci Tombol Edit

      Hapus
  11. Bagaimana caranya kalau ingin menampilakan kolom tertentu saja y pak?

    BalasHapus
    Balasan
    1. Terimakasih atas kunjungan dan komentarnya pak Dedi Nestoriko Sinaga..!!
      Untuk menampilkan data pada ListBox tergantung Area yang dijadikan rangenya pak.. Jadi tentukan rangenya saja di area tertentu..

      Hapus
  12. Mksd sy jk qt ingin hanya menampilkan kolom ke 2 lalu ke 4 lalu ke 6 sj. Krn klw berdasarkan area maka kolom2 diantaranya akan ikut muncul jg.

    BalasHapus
    Balasan
    1. Gan nah saya menemukan masalah seperti begini juga gimana prnyelesaian nya

      Hapus
    2. belom pernah saya bkin hal2 seperti pertanyaan ini.... Mungkin patut di coba.. klo bisa ntar di share dech..

      Hapus
  13. gan mau tanya donk....
    kalo misalnya listBox nya tidak dipasang di Form (di dalam sheet) itu gimana caranya ya ?

    BalasHapus
    Balasan
    1. Dolphin Group Divisi IT.. Terimakasih atas kunjungan dan komentarnya
      Untuk memasang ListBox di sheet bisa menggunakan Filtur yang ada pada Developer >> Insert >> Gunakan ListBox yang ada di Form Controls ataupun Controls ActiveX. Selanjutnya tinggal menginput keperluan Properties yang di inginkan.

      Hapus
    2. sudah saya coba tapi yang terbaca di listbox hanya satu kolom saja, apakah harus menggunakan syntax seperti diatas atau bagaimana ya caranya, mohon bantuannya
      Terima kasih

      Hapus
    3. Ada 2 hal yang berpengaruh terhadap jumlah column yang muncul di listbox...
      1. .ColumnCount = 5
      2. .RowSource = "ListDB"

      angka 5 pada columnCount merupakan jumlah kolom yang akan ditampilkan. Namun jika RowSource yang berasal dari range tidak ada 5 column yang terbaca pada sheet maka tidak akan tampil 5 kolom....
      Cek kembali range dinamis yang sudah dibuat...

      Hapus
  14. Siip. Thanks
    Nanti sya coba 1 per 1 semoga berjalan lancar.

    BalasHapus
  15. Ilmu yang sangat membantu, saya coba dulu semoga lancar, sekali lagi terimakasih semoga menjadi ladang pahala bagi pemilik blog ini

    BalasHapus

Komentar Anda Sangat Menentukan Kelangsungan Blog ini