• Berbagai Cara Mengisi Daftar ListBox

    Cara-cara mengisi ListBox ListBox adalah sebuah elemen kontrol grafis yang memungkinkan pengguna untuk memilih satu atau beberapa item dari daftar yang terdapat dalam kotak yang umumnya terdiri dari beberapa baris, dan pengguna diberikan akses untuk mengeklik di dalam kotak pada item untuk memilihnya, terkadang dikombinasikan dengan Shift atau Ctrl untuk membuat beberapa pilihan.

    Lalu muncul sebuah pertanyaan sederhana, darimana daftar item yang terdapat dalam ListBox tersebut berasal?
    Setidaknya ada dua jawaban untuk menjawab asal item dari daftar ListBox yakni bisa diisi secara manual atau ditulis langsung dalam baris kode Macro VBA dan bisa juga diisi sesuai dengan data-data yang terdapat dalam lembar kerja Microsoft Excel. Nah, untuk cara yang kedua bisa dimodifikasi sesuai dengan kebutuhan untuk mendapatkan informasi yang diinginkan.

    Pada bagian ini excelive.com akan mengupas tuntas tentang beragam cara dalam mengisi daftar yang terdapat di dalam ListBox, tentunya dengan menggunakan Macro VBA.

    Ok. langsung saja buka aplikasi Microsoft Excel dan segera aktifkan jendela Microsoft Visual Basic Editor yang bisa anda lakukan dengan cara menekan tombol pintas ALT + F11. Juga, pastikan bahwa keamanan Macro Security Microsoft Excel sudah di nonaktifkan agar kode yang sudah ditulis nantinya bisa dijalankan.

    Dalam jendela Microsoft Visual Basic Editor buat sebuah UserForm dan tempatkan sebuah ListBox didalamnya, seperti tampak dalam gambar berikut :
    Userform dan ListBox
    Setelah anda selesai mendesain interface seperti di atas, saatnya mengisi daftar-daftar item di dalam ListBox.
    Dan untuk tutorial kali ini, kita akan menjalankan kode-kode Macro VBA agar secara otomatis dieksekusi ketika UserForm1 di buka, oleh karena itu maka Objek yang harus dipilih adalah UserForm sementara prosedurnya adalah Activate atau bisa juga memilih prosedur Initialize.

    Metode Pengisian 1 - Cara Manual
    Cara yang paling sederhana dalam mengisi daftar item di ListBox adalah dengan cara menuliskannya secara manual di baris kode Macro VBA dengan menggunakan parameter AddItem seperti berikut :
    ListBox1.AddItem "abc"
    ListBox1.AddItem "def"
    ListBox1.AddItem "ghi"
    ListBox1.AddItem "jkl"
    Baris kode di atas berfungsi untuk menambahkan 4 buah item di ListBox1, dan karena cara penulisan tersebut memiliki pengulangan untuk objek ListBox1, maka hal ini bisa disempurnakan dengan model syntax penulisan seperti berikut
    With ListBox1
      .AddItem "abc"
      .AddItem "def"
      .AddItem "ghi"
      .AddItem "jkl"
    End With
    Kedua model syntax penulisan kode di atas memiliki fungsi yang sama, yakni menambahkan item di dalam objek ListBox dengan cara ditulis secara manual.

    Metode Pengisian 2 - Daftar Tetap
    Cara berikut ini adalah dengan menggunakan bantuan sebuah lembar kerja yang berisi data-data yang akan ditampilkan dalam daftar item di ListBox yang sudah ditentukan dan sifatnya tetap.
    ListBox1.RowSource = "A1:A5"
    Baris kode di atas akan membaca data-data yang terdapat dalam lembar kerja dari sel A1 hingga sel A5 untuk kemudian di tampilkan dalam kotak ListBox

    Metode Pengisian 3 - Daftar Dinamis
    Sama seperti metode pengisian 2 yakni dengan menggunakan bantuan lembar kerja yang digunakan sebagai isi dari daftar yang terdapat dalam ListBox, akan tetapi untuk metode pengisian kali ini daftar tersebut sifatnya dinamis, artinya bahwa penambahan isi daftar ListBox akan secara otomatis berubah ketika data-data yang terdapat di lembar kerja mengalami penambahan juga.
    Dan salah satu baris kode yang bisa digunakan untuk membuat isi daftar ListBox bersifat dinamis adalah seperti berikut :
    Dim akhir As Variant
    akhir = Sheets("Sheet1").Range("a1").CurrentRegion.Rows.Count
    For x = 1 To akhir
        ListBox1.AddItem Cells(x, 1)
    Next
    Baris kode di atas, variabel akhir difungsikan untuk mengetahui baris akhir yang berisi data berdasarkan data-data yang tertulis dikolom A.
    Ada beberapa cara lainnya dalam menentukan posisi baris terakhir yang berisi data, namun untuk tutorial ini saya menggunakan parameter CurrentRegion yang menurut saya lebih mudah penggunaannya.
    Silahkan lihat disini untuk pembahasan CurrentRegion lebih lanjut

    Metode pengisian daftar ListBox menggunakan parameter AddItem, namun kali ini item di ambil dari lembar kerja yang sudah ditentukan yakni dimulai dari sel A1 hingga sel terakhir yang berisi data, juga pengisiannya dikombinasikan dengan penggunaan fungsi Loop agar daftar di ListBox mengikuti perubahan atau penambahan yang terjadi di lembar kerja.

    Untuk mengetahui tutorial penggunaan Loop, baca tutorial-tutorial berikut :
     Solusi Handal Melakukan Pencarian
     Kombinasi Fungsi Match dan Index
     Mengenal Formula Pembulatan Angka
     Konversi Angka ke Huruf

    Metode Pengisian 4 - Daftar Spesifik
    Metode pengisian daftar ListBox model ini merupakan kombinasi dari metode-metode di atas, akan tetapi dengan menambahkan sebuah kriteria tertentu agar daftar yang ditampilkan di ListBox sesuai dengan kriteria yang dimaksudkan.
    Lihat tutorialnya disini

    Metode Pengisian 5 - Daftar Unik
    Jika anda memiliki kumpulan data-data dalam lembar kerja, dan kemudian anda ingin menampilkannya ke dalam jendela ListBox namun hanya ingin menampilkan data yang sifatnya unik (tidak dobel), maka anda bisa pelajari panduannya disini

    Metode Pengisian 6 - Daftar Dari Lembar Kerja Lain
    Ok, sekarang kita akan mencoba mengisi ListBox namun berasal dari lembar lain. Dan untuk melakukan hal ini, maka pengisian ListBox dengan menggunakan syntax penulisan standar seperti yang metode-metode diatas - bisa dipastikan tidak akan berhasil. Dan solusinya adalah dengan menggunakan alternatif kode berikut:
    Dim rng As Range
    Dim i As Long
    Set rng = Worksheets("Sheet2").Range("a1:a5")
    For i = 1 To 5
    With Me.LB1
       .AddItem rng(i, 1)
    End With
    Next i
    
    Dari kode diatas saya mengasumsikan saat ini anda berada di posisi selain lembar kerja kedua (sheet2), sementara dilembar kerja ini (Lembar kerja / Sheet2) terdapat beberapa data-data dari sel A1 hingga A5 yang kesemuanya ingin anda tampikan di ListBox.
    Dan jika anda cermati, metode pengisian daftar ListBox ini menggunakan syntax "AddItem" seperti yang dilakukan pada Metode 1, akan tetapi untuk setiap itemnya tidak ditulis atau di isi secara manual, melainkan menggunakan fungsi For..Next agar daftar dapat terisi secara otomatis.

    Metode Pengisian 7 - Daftar Terdiri Dari 2 Kolom / Lebih
    Tidak ubahnya dengan cara sebelumnya, akan tetapi metode ini mengambil data-data di lembar kerja lain yang terdiri dari 2 (dua) kolom atau lebih. Berikut contoh lengkapnya:
    Dim rng As Range
    Dim i As Long
    Set rng = Worksheets("Sheet2").Range("a1:B5")
    For i = 1 To 5
    With Me.LB1
       .AddItem rng(i, 1)
       .List(.ListCount - 1, 1) = rng(i, 2)
    End With
    Next i
    

    Metode Pengisian 8 - Daftar Nama Bulan Terakhir
    Ingin mengotomatisasi daftar di ListBox dengan nama-nama bulan, dan anda hanya menampilkan nama beberapa bulan terakhir saja di dalamnya. Silahkan anda pelajari panduannya disini

    Metode Pengisian 9 - Daftar Array
    Cara ini adalah cara yang paling praktis jika anda ingin mengisi daftar yang ada di dalam ListBox secara manual, yakni menggunakan metode Array seperti ini
    ListBox1.List = Array("satu","dua","tiga","dst...")
    Selain untuk ListBox, tentu juga bisa digunakan untuk ComboBox Lho!...


    Artikel Terkait

  • Still haven't found what are you looking for

    We have provided a complete list of articles on this site to make it easier for you and giving the best solution for your excel issues

    VISIT LINK
    loading...
    DMCA.com Protection Status

    excelive.com
    is a blogger resources site who provides best excel tutorial based on daily needs. The main mission of excelive is to share our little experience in excel to deliver best time killer for your excel issues.
    T.O.S
    Term of service

    Read More
    Download Area
    to complete all excel lessons, we have provided a download link for you Find Here
    Copyright © 2015 - excelive.com. Some rights reserved.
    equipped with by blogger