Bagaimanakah cara pencarian data yang ada sebuah grid, misalnya kita ingin mencari nama joko dari data yang di tampilkan dalam sebuah grid tersebut dan semua nama yang mengandung nama joko akan muncul semua dalam grid tersebut.
Kemudian double klik formnya lalu ketikan koding berikut ini pada bagian General Declarations, berfungsi untuk mengatur tampilan msflexgrid dan menampilkan data.
Kemudian ketikan koding berikut ini pada Form Load
Kemudian double klik text1 kemudian ketikan koding berikut ini pada Text1_Change
Jika sudah semua silahkan di run, dan jika berhasil maka hasilnya akan seperti yang nampak pada gambar animasi di bawah ini. selamat mencoba dan semoga berhasil serta bermanfaat. Dan jika ada yang kurang jelas silahkan kasih komentar.
Jika tidak ingin ribet untuk mendesain dan mengetik kodenya silahkan download source codenya di link download di akhir postingan ini.
Dengan menggunakan perintah LIKE dalam bahasa SQL maka masalah tersebut bisa di atasi. Bagaimanakah cara pengunaan LIKE dalam bahasa SQL tersebut di terapkan dalam vb 6 ?
Saya akan memakai option untuk jenis pencariannya misalnya kita akan mencari data berdasarkan nama maka kita pilih option nama dulu dan jika kita mau mencari data berdasarkan alamat maka kita pilih option alamat baru mengetikan kata pencariannya begitu seterusnya.
Biar jelas dan paham silahkan ikuti langkah-langkah penggunaannya sebagai berikut ini :
Bukalah visual basic 6 dan buatlah sebuah form tambahkan msflexgrid,textbox,command button,option button seperti gambar berikut ini :
Tampilkan Gambar
Pada postingan ini saya memakai database DB_MHS.mdb, dengan nama tabel Tbl_Mhs desainnya seperti yang nampak pada gambar berikut ini :
Tampilkan Gambar
kemudian klik menu Project-References kemudian cari dan centang Microsoft ActivX Data Objects 2.x Library lalu klik ok.
Kemudian tambahkan sebuah modul dengan cara klip menu Project-Add Modul dan ketikanlah koding berikut ini pada modul tersebut :
Public Conn As New ADODB.Connection Public RsMhs As ADODB.Recordset Public Sub KonekDB() Set Conn = New ADODB.Connection Conn.Open "PROVIDER=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\DB_MHS.mdb" Conn.CursorLocation = adUseClient End Sub
Kemudian double klik formnya lalu ketikan koding berikut ini pada bagian General Declarations, berfungsi untuk mengatur tampilan msflexgrid dan menampilkan data.
Dim Baris As Double Sub AktifGrid() MSFlexGrid.Cols = 5 MSFlexGrid.RowHeightMin = 300 '------------------------------------------------- MSFlexGrid.Col = 0 MSFlexGrid.Row = 0 MSFlexGrid.Text = "NO" MSFlexGrid.CellFontBold = True MSFlexGrid.ColWidth(0) = 500 MSFlexGrid.AllowUserResizing = flexResizeColumns MSFlexGrid.CellAlignment = flexAlignCenterCenter '------------------------------------------------- MSFlexGrid.Col = 1 MSFlexGrid.Row = 0 MSFlexGrid.Text = "NIM" MSFlexGrid.CellFontBold = True MSFlexGrid.ColWidth(1) = 700 MSFlexGrid.AllowUserResizing = flexResizeColumns MSFlexGrid.CellAlignment = flexAlignCenterCenter '------------------------------------------------- MSFlexGrid.Col = 2 MSFlexGrid.Row = 0 MSFlexGrid.Text = "NAMA MHS" MSFlexGrid.CellFontBold = True MSFlexGrid.ColWidth(2) = 2000 MSFlexGrid.AllowUserResizing = flexResizeColumns MSFlexGrid.CellAlignment = flexAlignCenterCenter '------------------------------------------------- MSFlexGrid.Col = 3 MSFlexGrid.Row = 0 MSFlexGrid.Text = "ALAMAT" MSFlexGrid.CellFontBold = True MSFlexGrid.ColWidth(3) = 2000 MSFlexGrid.AllowUserResizing = flexResizeColumns MSFlexGrid.CellAlignment = flexAlignCenterCenter '--------------------------------------------------- MSFlexGrid.Col = 4 MSFlexGrid.Row = 0 MSFlexGrid.Text = "JURUSAN" MSFlexGrid.CellFontBold = True MSFlexGrid.ColWidth(4) = 2300 MSFlexGrid.AllowUserResizing = flexResizeColumns MSFlexGrid.CellAlignment = flexAlignCenterCenter End Sub Sub TampilGrid() MSFlexGrid.Clear Call AktifGrid MSFlexGrid.Rows = 2 Baris = 0 Call KonekDB Set RsMhs = New ADODB.Recordset RsMhs.Open "SELECT * FROM Tbl_Mhs ORDER BY nim ASC", Conn, adOpenDynamic, adLockOptimistic If RsMhs.BOF Then Exit Sub Else With RsMhs .MoveFirst Do While Not .EOF Baris = Baris + 1 MSFlexGrid.Rows = Baris + 1 MSFlexGrid.TextMatrix(Baris, 0) = Baris MSFlexGrid.TextMatrix(Baris, 1) = !nim MSFlexGrid.TextMatrix(Baris, 2) = !nama MSFlexGrid.TextMatrix(Baris, 3) = !alamat MSFlexGrid.TextMatrix(Baris, 4) = !jurusan .MoveNext Loop End With End If RsMhs.Close End SubSub AktifGrid berfungsi untuk mengatur tampilan msflexgrid sedang Sub TampilGrid berfungsi untuk menampilkan data pada msflexgrid.
Kemudian ketikan koding berikut ini pada Form Load
Private Sub Form_Load() Call TampilGrid End Sub
Kemudian double klik text1 kemudian ketikan koding berikut ini pada Text1_Change
Private Sub Text1_Change() If Option1.Value = False And Option2.Value = False _ And Option3.Value = False And Option4.Value = False Then MsgBox "Pilih Opsi Pencarian Terlebih dulu", vbExclamation, "Perhatian" Exit Sub End If MSFlexGrid.Clear Call AktifGrid MSFlexGrid.Rows = 2 Baris = 0 Call KonekDB Set RsMhs = New ADODB.Recordset 'pencarian berdasarkan nim If Option1.Value = True Then RsMhs.Open "SELECT * FROM Tbl_Mhs WHERE nim LIKE '%" & Text1.Text & "%'", _ Conn, adOpenDynamic, adLockOptimistic 'pencarian berdasarkan nama ElseIf Option2.Value = True Then RsMhs.Open "SELECT * FROM Tbl_Mhs WHERE nama LIKE '%" & Text1.Text & "%'", _ Conn, adOpenDynamic, adLockOptimistic 'pencarian berdasarkan alamat ElseIf Option3.Value = True Then RsMhs.Open "SELECT * FROM Tbl_Mhs WHERE alamat LIKE '%" & Text1.Text & "%'", _ Conn, adOpenDynamic, adLockOptimistic 'pencarian berdasarkan jurusan ElseIf Option4.Value = True Then RsMhs.Open "SELECT * FROM Tbl_Mhs WHERE jurusan LIKE '%" & Text1.Text & "%'", _ Conn, adOpenDynamic, adLockOptimistic End If If RsMhs.BOF Then Exit Sub Else With RsMhs .MoveFirst Do While Not .EOF Baris = Baris + 1 MSFlexGrid.Rows = Baris + 1 'no urut MSFlexGrid.TextMatrix(Baris, 0) = Baris MSFlexGrid.TextMatrix(Baris, 1) = !nim MSFlexGrid.TextMatrix(Baris, 2) = !nama MSFlexGrid.TextMatrix(Baris, 3) = !alamat MSFlexGrid.TextMatrix(Baris, 4) = !jurusan .MoveNext Loop End With End If RsMhs.Close End Sub
Jika sudah semua silahkan di run, dan jika berhasil maka hasilnya akan seperti yang nampak pada gambar animasi di bawah ini. selamat mencoba dan semoga berhasil serta bermanfaat. Dan jika ada yang kurang jelas silahkan kasih komentar.
Pencarian Data Pada MsFlexGrid |
Jika tidak ingin ribet untuk mendesain dan mengetik kodenya silahkan download source codenya di link download di akhir postingan ini.
Tags:
Pencarian Data Pada MsFlexGrid,Pencarian Data,Trik Pencarian Data di VB,Filter Data Pada VB,Penyaringan Data di Visual Basic,Pencarian Data Pada Grid,Pencarian Data Di Grid,Pencarian Data Di VB, Source Code Pencarian Data
Mangapa jika saya klik mshflexgrid utk mnculkan data dari recond ke 5 maka data yang muncul adalah data recond 4?? Mhon bntuannya krim ke email saya triewahyunich@gmail.com secepatnya yaa terima ksih
ReplyDeletekirim source codenya ke email saya biar nanti saya benerin mbak..? hadiasoka@gmail.com
Deletemas minta source codenya, saya download ga bisa ...
ReplyDeletekirim ke ngazizrizky@gmail.com
ok. sudah saya email . trima kasih
Deletesaya pernah download yg forminput,edit,simpan,hapus,cari data sekedar koreksi ada run time error 3021 saat data yg dicari tidak ada kadang muncul juga run time error 30009, tolong disempurnakan ya ? trims artikel bagus2
ReplyDeleteterima kasih atas laporannya. sekarang sudah saya update silahkan di cek :).
Deletemas cara ngeprint data dari database berbeda itu gimana mas
ReplyDeleteterima kasih
mohon pencerahannya mas
mungkin kurang kode untuk refresh. blh lihat kode nya mas?
Deletemaaf mas hadi, ini bisa diterapkan untuk DataGrid nggak ?
ReplyDeleteMas boleh minta sourch kode.a. q dowload gx bsa. Septynur28@gmail.com
ReplyDeleteThanks
Mas kalauu pkai data grid coding.a gmna??
ReplyDeleteKode untuk refresh di flexgridnya apa? please
ReplyDeleteKode untuk comand Refreshnya di flexgridnya apa? Please
ReplyDeleteAku coba ini tapi begitu di pilih salah satu nim nya malah yg keluar NIM tidak ditemukan terus. Gimana ya.
ReplyDeletepakai perintah like gak om?
Delete