Cari Membuat Filter/Pencarian Data Dengan 2 Kreteria Tampil Di Listbox
Cari Filter/Pencarian Data Dengan 2 Kreteria Tampil Di Listbox - Cari Filter/Pencarian Data Dengan 2 Kreteria menggunakan combobox bertingkat seperti terlihat pada gambar gif dibawah.! Mau tau cara membuatnya.?!
Membuat Aplikasi sederhana dengan tombol pencarian bertingkat akan membuat pengguna lebih leluasa dalam menentukan pencarian data berdasarkan kreteria data yang ada.
Tampilan Pencarian Data/Filter Dengan 2 Kreteria |
Pencarian data atau sering disebut dalam dunia Excel Filter data pada sebuah aplikasi merupakan hal yang wajib.
Tombol pencarian akan mempercepat pengguna dalam mencari suatu data yang terdapat dalam daftar.
Pencarian data bertingkat yang akan admin jelaskan pada artikel ini akan sangat membantu anda yang gemar membangun aplikasi dalam bekerja.
Pada aplikasi yang digunakan di Swalayan untuk menanggani stok barang, penjualan dan pembelian barang juga dilengkapi dengan berbagai pencari data.
Jika pencarian data dilakukan secara manual akan kesulitan rasanya jika kita harus mencari satu nama item barang dari berbagai macam item nama barang.
Bagi anda yang bekerja di bidang pendidikan juga sering menggunakan fasilitas pencarian data. Hal ini sering dilakukan ketika pihak administrasi sekolah harus membuat surat keterangan siswa.
Jika lembaga pendidikan memiliki jumlah siswa yang banyak tentu akan akan kesulitan.
Oleh karena itu admin akan memberikan suatu contoh dan gambaran Cari Membuat Filter/Pencarian Data Dengan 2 Kreteria Tampil Di Listbox yang dapat menyempurnakan aplikasi yang sedang anda rancang untuk kemudahan bekerja.
Baca Terlebih dahulu Posting agar lebih matang memahaminya
Karena tahap awal sebelum membuat Combobox bertingkat untuk mencari data/menfilter data dengan 2 kreteria haruslah terlebih dahulu membuat range dan menampilakan data pada Listbox.
Langkah-langkah Cari Data/Filter Data Dengan 2 Kreteria menggunakan Combobox dan Tampil Di Listbox :
- Download Sample disini : Cari Data-Combobox Bertingkat
- Buka Visual Basic dan rangcanglah sesuai dengan tampak pada gambar format gift diatas
- Sesuiakan Properties sebagai berikut
- Tempat Kode Berikut pada userform dimana ajha, untuk menampilkan data pada Listbox1
Sub ListData1()
With UserForm1.ListBox1
.ColumnCount = 6
.ColumnHeads = False
.ColumnWidths = "50"
.RowSource = "RDATA"
.BoundColumn = 0
End With
End Sub
With UserForm1.ListBox1
.ColumnCount = 6
.ColumnHeads = False
.ColumnWidths = "50"
.RowSource = "RDATA"
.BoundColumn = 0
End With
End Sub
- Tempatkan kode berikut ini pada userform dimana ajha untuk Kategori
Sub Kategori()
Dim i As Integer
Dim Ws As Worksheet: Set Ws = Sheet1
With UserForm1.ComboBox1
For i = 3 To 6
.AddItem Ws.Cells(2, i)
Next i
End With
End Sub
Dim i As Integer
Dim Ws As Worksheet: Set Ws = Sheet1
With UserForm1.ComboBox1
For i = 3 To 6
.AddItem Ws.Cells(2, i)
Next i
End With
End Sub
- Tempatkan Kode dibawah ini pada Userform_Initialize()
Private Sub UserForm_Initialize()
Call ListData1
Call Kategori
Call RemoveCaption(UserForm1)
End Sub
Call ListData1
Call Kategori
Call RemoveCaption(UserForm1)
End Sub
- Tempatkan Kode dibawah ini pada Combobox1_Change()
Private Sub ComboBox1_Change()
Dim i As Integer
Dim Ws As Worksheet: Set Ws = Sheet1
Dim Cb As String
Dim tmp As String
Cb = ComboBox1.Value
ComboBox2.Clear
Select Case Cb
Case "JENIS KELAMIN"
With UserForm1.ComboBox2
For i = 3 To Cells(Rows.Count, 3).End(xlUp).Row
If InStr(1, tmp, Ws.Range("C" & i) & ";") = 0 Then
.AddItem Ws.Range("C" & i)
tmp = tmp & Ws.Range("C" & i) & ";"
End If
Next i
End With
Case "TANGGAL"
With UserForm1.ComboBox2
For i = 3 To Cells(Rows.Count, 4).End(xlUp).Row
If InStr(1, tmp, Ws.Range("D" & i) & ";") = 0 Then
.AddItem Ws.Range("D" & i)
tmp = tmp & Ws.Range("D" & i) & ";"
End If
Next i
End With
Case "BULAN"
With UserForm1.ComboBox2
For i = 3 To Cells(Rows.Count, 5).End(xlUp).Row
If InStr(1, tmp, Ws.Range("E" & i) & ";") = 0 Then
.AddItem Ws.Range("E" & i)
tmp = tmp & Ws.Range("E" & i) & ";"
End If
Next i
End With
Case "TAHUN"
With UserForm1.ComboBox2
For i = 3 To Cells(Rows.Count, 6).End(xlUp).Row
If InStr(1, tmp, Ws.Range("F" & i) & ";") = 0 Then
.AddItem Ws.Range("F" & i)
tmp = tmp & Ws.Range("F" & i) & ";"
End If
Next i
End With
End Select
End Sub
Dim i As Integer
Dim Ws As Worksheet: Set Ws = Sheet1
Dim Cb As String
Dim tmp As String
Cb = ComboBox1.Value
ComboBox2.Clear
Select Case Cb
Case "JENIS KELAMIN"
With UserForm1.ComboBox2
For i = 3 To Cells(Rows.Count, 3).End(xlUp).Row
If InStr(1, tmp, Ws.Range("C" & i) & ";") = 0 Then
.AddItem Ws.Range("C" & i)
tmp = tmp & Ws.Range("C" & i) & ";"
End If
Next i
End With
Case "TANGGAL"
With UserForm1.ComboBox2
For i = 3 To Cells(Rows.Count, 4).End(xlUp).Row
If InStr(1, tmp, Ws.Range("D" & i) & ";") = 0 Then
.AddItem Ws.Range("D" & i)
tmp = tmp & Ws.Range("D" & i) & ";"
End If
Next i
End With
Case "BULAN"
With UserForm1.ComboBox2
For i = 3 To Cells(Rows.Count, 5).End(xlUp).Row
If InStr(1, tmp, Ws.Range("E" & i) & ";") = 0 Then
.AddItem Ws.Range("E" & i)
tmp = tmp & Ws.Range("E" & i) & ";"
End If
Next i
End With
Case "TAHUN"
With UserForm1.ComboBox2
For i = 3 To Cells(Rows.Count, 6).End(xlUp).Row
If InStr(1, tmp, Ws.Range("F" & i) & ";") = 0 Then
.AddItem Ws.Range("F" & i)
tmp = tmp & Ws.Range("F" & i) & ";"
End If
Next i
End With
End Select
End Sub
- Masih pada Combobox1 Perhatikan gambar berikut, Bagian yang saya merahkan..!!
- Tempatkan Kode dibawah ini pada Combobox2
Private Sub ComboBox2_Change()
Sheets("DATA").Range("K2").Value = UserForm1.ComboBox2.Text
End Sub
Sheets("DATA").Range("K2").Value = UserForm1.ComboBox2.Text
End Sub
- Tempatkan Kode dibawah ini pada Private Sub Label2_Click, Untuk Tombol Cari Data
Private Sub Label2_Click()
Dim Ws As Worksheet: Set Ws = Sheets("DATA")
Dim WsRekap As Worksheet: Set WsRekap = Sheets("LAPORAN")
Dim R As Range: Set R = Ws.Range("RDATA")
Dim RFilter As Range: Set RFilter = Ws.Range("K1:K2")
Dim RCari As Range: Set RCari = Ws.Range("K2")
Dim C As Variant
If Ws.FilterMode Then Ws.ShowAllData
If UserForm1.ComboBox2.Text = "" Then
MsgBox "Pilih Rekap Laporan Terlebih Dahulu..!!", 64, "Filter Data"
Exit Sub
End If
UserForm1.ComboBox2.Text = RCari
R.AdvancedFilter Action:=xlFilterCopy, _
CriteriaRange:=RFilter, CopyToRange:=WsRekap.Range("B3:G3"), Unique:=False
ListBox1.RowSource = "RLAPORAN"
End Sub
Dim Ws As Worksheet: Set Ws = Sheets("DATA")
Dim WsRekap As Worksheet: Set WsRekap = Sheets("LAPORAN")
Dim R As Range: Set R = Ws.Range("RDATA")
Dim RFilter As Range: Set RFilter = Ws.Range("K1:K2")
Dim RCari As Range: Set RCari = Ws.Range("K2")
Dim C As Variant
If Ws.FilterMode Then Ws.ShowAllData
If UserForm1.ComboBox2.Text = "" Then
MsgBox "Pilih Rekap Laporan Terlebih Dahulu..!!", 64, "Filter Data"
Exit Sub
End If
UserForm1.ComboBox2.Text = RCari
R.AdvancedFilter Action:=xlFilterCopy, _
CriteriaRange:=RFilter, CopyToRange:=WsRekap.Range("B3:G3"), Unique:=False
ListBox1.RowSource = "RLAPORAN"
End Sub
- Tempatkan Kode dibawah ini pada , Untuk tombol Tampil Semua data di Listbox
Private Sub Label3_Click()
Call ListData1
End Sub
Call ListData1
End Sub
Demikian Posting Cari Data/Filter Data Dengan 2 Kreteria Tampil Di Listbox, Semoga dapat dikembangkan.
Jika masih gagal paham baca yang disini ajha lebih banyak gambarnya
terimakasih buat pestinganya sangant membantu pak,
BalasHapusSma2 pak Samsudin Eltibiz... Semoga dapat dikembangkan lagi... Bila ada Aplikasi VBA excel mhon bisa di share ke email saya senbakusen@gmail.com
Hapusass. pak koq ada error di
BalasHapusPrivate Sub UserForm_Initialize()
Call ListData1
Call Kategori
Call RemoveCaption(UserForm1)
End Sub
Sama... Ane error juga di userform_Intialize
Hapustepatnya di Call RemoveCaption(userform1)
yg Call RemoveCaption(Userform1) itu untuk apa mas, errornya d situ
BalasHapusCall RemoveCaption(Nama_UserForm) untuk menyembunyikan header UserForm..
HapusLaporan Errornya bgaimana?
Bang minta filenya dong please... error mulu aku buatnya bang...
Hapusemail aku bang. Boriizakkaratemhooru@gmail.com
Hapusterima kasih sebelumnya bang...
compile error: sub or function not difined
BalasHapussaya coba hapus yg "Call RemoveCaption(Nama_UserForm)" malah bisa jalan
Mantap... hapus saja x... cari jalan mudah saja...
Hapuskoq jd bilang mantaf mas... orang saya bingung... tp makasih banyak ilmunya mas, semoga jd amal ibadah.. amin.
Hapusizin terus belajar dari sini mas
lanjutkan....!! bila ada kendala.. contact lagi..
HapusMas mau nnya bedanya yg 2 kriteria dengan combobox bertingkat apa ya kok sya liat hampir sama ya??,
BalasHapusOia mas, setelah di filter bisa ngk kita tambahin tombol print, jadi data yg di print hanya yg terfilter?
Sama saja mas Syamsul Arifin..
Hapussaya bikin dua Judul posting karena untuk mencari target pencarian Google saja...
Untuk tombol print bisa ditambahkan.. dengan sheet hasil pencarian atau sheet hasil filter untuk perintah printnya...
Saya mencoba koding nya di database lain mas, tetapi selalu bermasalah di koding yang ini:
BalasHapusR.AdvancedFilter Action:=xlFilterCopy, _
CriteriaRange:=RFilter, CopyToRange:=WsRekap.Range("B3:G3"), Unique:=False
ListBox1.RowSource = "RLAPORAN"
Saya sudah membuat hasil Advanced Filter untuk sheet yang saya namakan LAPORAN juga, tapi masih gagal. Apakah ada step yang kurang?
Kemungkinan besar ketidak cocokan range sumber data, range pencarian dan range hasil pencarian..
Hapusjika berkenan bisa kirimkan filenya ke email : senbakusen@gmail.com
Saya sudah kirim file nya ke email ya mas. Mohon bantuannya, terimakasih
Hapuskalo mau masukan semua hasil filter ke sheet gimana cara nya gan
BalasHapusMasih bingung dengan menghayal logika yang diingikan..!! jadi smentar blom dapat Wangsit..!! hhehehe
HapusMerubah range data dan laporan gmana ya mas biar contoh datanya lebih banyak, saya buka name managernya, tapi gk maksud, haha...., terima kasih, semoga admin senbakusen diberkahi umur panjang, rezki yang berlimpah dan keluarga yang bahagia, aamin (ngerayu), :)
BalasHapusApakah maksudnya ingin membuat filter dengan dua combobox dan data filter lebih banyak lagi dari contoh yang ada..!!?
HapusJika demikian..!! caranya cukup menambahkan header tabel dan datanya.
Selanjutnya judul headers dari tabel kembali di tambahkan pada kode vbanya....
Demikian mas... semoga dimengerti.. bahasa ala otodidak....
terimakasih atas doanya semoga terkabulkan.. Amin.!!
Mohon Izin untuk belajar dari sini ya Mas...
BalasHapussaya masih bingung untuk menanpilkan advance filternya..tapi akan terus di coba
BalasHapusFile contohnya juga sudah g' bisa di download...
Semoga membantu mas.. Mungkin minat promo ramadhan..
Hapusberikut linknya
https://www.senbakusen.com/2018/04/contoh-file-penerapan-vba-excel-dan.html
selamat sore
BalasHapussaya sudah mencoba di file yang disediakan di download dan berhasil
namun pas saya praktekaan di file yang lain selalu gagal, mohon bantuan dan arahanya
terimakasih
Di ulang lagi.. pasti ada langkah yang tertinggal..
Hapushaloha mas,
BalasHapusmas, ketika programnya saya coba terdapat permision denied pada sub kategori, hal ini terjadi kenapa ya mas?
terimakasih mas, mohon info.
ada penempatan kode yang tidak relevan dengan aturan..
HapusTambah kolom edit dimna aja ya?
BalasHapus