Baiklah kali ini saya akan membahas tentang bagaimana mencari data dengan mudah di listview menggunakan combobox berdasarkan kategori yang kita inginkan, Misalnya
pencarian Kode, Nama, Alamat, Nomor Transaksi dan sebagainya.
Ketika kita pilih contohnya nama barang di combobox dan kemudian kita ketikan nama barang yang kita inginkan maka nama barang yang kita pilih tersebut tampil di tabel listview.
Ketika kita pilih contohnya nama barang di combobox dan kemudian kita ketikan nama barang yang kita inginkan maka nama barang yang kita pilih tersebut tampil di tabel listview.
Kunjungi juga: Cara Pencarian Data Pada Listbox Vba Excel
Coding yang digunakan pada listview sangatlah jauh berbeda dengan listbox. Ok dech sobat Excel Tanpa berlama-lama silahkan simak aja Langkah-langkah nya di bawah ini.
Komponen yang di gunakan Listview, Combobox dan textbox.
Komponen yang di gunakan Listview, Combobox dan textbox.
Pencarian Data di Listview Vba Excel
- Baiklah pertama buatlah tabel barang seperti di gambar.
- Kemudian desainlah form seperti berikut:
- Ketikan coding di textbox seperti berikut:
Private Sub TextBox1_Change()
Dim akate As Integer
Dim vkate As String
vkate =TextBox1
Select Case cbocari.ListIndex
Case 0 'nama akate = 2
Case 1 'kategori akate = 4
Case 2 'kode barang akate = 3
End
Select If
akate > 0 Then
Loadbarang akate, vkate
Else
Loadbarang 1, "semua"
End If
End Sub
- Kemudian di Userform_Active buatlah coding seperti berikut.
Private Sub UserForm_Activate()
With
cbocari.Clear
.AddItem "Nama Barang"
.AddItem "Kategori"
.AddItem "Kode Barang"
.ListIndex = 0
End With
Loadbarang 1, "semua"
End Sub
- Kemudian di Userform_unitialize ketikkan coding seperti berikut.
Private Sub UserForm_Initialize()
With
ListView1.FullRowSelect = True
.Gridlines = True
.View = lvwReport.ColumnHeaders.Add , ,
"Kode Barang", 70.ColumnHeaders.Add , ,
"Nama Barang", .Width - 320.ColumnHeaders.Add , ,
"Kategori", 80.ColumnHeaders.Add , ,
"Satuan", 60.ColumnHeaders.Add , ,
"Harga", 60.ColumnHeaders.Add , ,
"Stok", 50
End With
End Sub
- Setelah itu buatlah coding seperti gambar berikut ini.
Private Sub Loadbarang(akategori As Integer, vkategori As String)
Dim jml As Integer
Dim i As Integer
Dim lis As ListItem
jml = Sheet1.Range("kdbarang").Count - 1
If jml > 0 Then
ListView1.ListItems.Clear
For i = 1 To jml
Select Case akategori
Case 1 'semua
Set lis = ListView1.ListItems.Add(, , Sheet1.Range("databarang").item(i, 2))
lis.SubItems(1) = Sheet1.Range("databarang").item(i, 4)
lis.SubItems(2) = Sheet1.Range("databarang").item(i, 5)
lis.SubItems(3) = Sheet1.Range("databarang").item(i, 6)
lis.SubItems(4) = Sheet1.Range("databarang").item(i, 7)
lis.SubItems(5) = Sheet1.Range("databarang").item(i, 9)
Case 2 'nama
vkategori = LCase(vkategori) & "*"
If LCase(Sheet1.Range("databarang").item(i, 4)) Like vkategori Then
Set lis = ListView1.ListItems.Add(, , Sheet1.Range("databarang").item(i, 2))
lis.SubItems(1) = Sheet1.Range("databarang").item(i, 4)
lis.SubItems(2) = Sheet1.Range("databarang").item(i, 5)
lis.SubItems(3) = Sheet1.Range("databarang").item(i, 6)
lis.SubItems(4) = Sheet1.Range("databarang").item(i, 7)
lis.SubItems(5) = Sheet1.Range("databarang").item(i, 9)
End If
Case 3 'kode
vkategori = LCase(vkategori) & "*"
If LCase(Sheet1.Range("databarang").item(i, 2)) Like vkategori Then
Set lis = ListView1.ListItems.Add(, , Sheet1.Range("databarang").item(i, 2))
lis.SubItems(1) = Sheet1.Range("databarang").item(i, 4)
lis.SubItems(2) = Sheet1.Range("databarang").item(i, 5)
lis.SubItems(3) = Sheet1.Range("databarang").item(i, 6)
lis.SubItems(4) = Sheet1.Range("databarang").item(i, 7)
lis.SubItems(5) = Sheet1.Range("databarang").item(i, 9)
End If
Case 4 'kategori
vkategori = LCase(vkategori) & "*"
If LCase(Sheet1.Range("databarang").item(i, 5)) Like vkategori Then
Set lis = ListView1.ListItems.Add(, , Sheet1.Range("databarang").item(i, 2))
lis.SubItems(1) = Sheet1.Range("databarang").item(i, 4)
lis.SubItems(2) = Sheet1.Range("databarang").item(i, 5)
lis.SubItems(3) = Sheet1.Range("databarang").item(i, 6)
lis.SubItems(4) = Sheet1.Range("databarang").item(i, 7)
lis.SubItems(5) = Sheet1.Range("databarang").item(i, 9)
End If
End Select
Next i
ListView1.SelectedItem.Selected = False
End If
End Sub
Terakhir silahkan klik Run (F5).
Bagi yang mau mencoba, silahkan klik download di bawah ini.
Salam sukses, semoga Berhasil.
Share This :
16 komentar