Selasa, 16 Oktober 2012

Metoda pencarian kata dengan textbox di datagridview

Dalam suatu aplikasi, biasanya ada pencarian kata dalam daftar/list yang ditampilkan dalam suatu Grid. Misalnya pencarian Nama, Alamat, Nomor Invoice dsb. Dalam hal ini penulis akan membahas pencarian dimana user mengetikan kata dalam sebuah textbox, sementara kursor didatagrid akan mencari kata yang sama sesuai dengan kata dalam textbox. Baiklah kita asumsikan bahwa kita sudah mempunyai aplikasi dan data yang akan ditampilkan seperti gambar dibawah ini :




proses pencarian gambar diatas adalah pencarian Nomor Akun. ketika kita mengetikan Nomor Akun yang kita inginkan, kursor yang berwarna biru di dalam grid akan menunjukkannya. Listing Programnya adalah sebagai berikut :

 Private Sub txtFind_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtFind.TextChanged
 
        Dim xloop1 As Integer
        Dim sPola As String
        Dim sbuka As String
        Dim SBetul As Boolean


        sPola = txtFind.Text + "*"


        For xloop1 = 1 To Gridme.RowCount - 1
            sbuka = Gridme.Rows(xloop1 - 1).Cells(0).Value
            SBetul = UCase(sbuka) Like UCase(sPola)

            If SBetul = True Then
                Gridme.CurrentCell = Gridme.Item(0, xloop1 - 1)
                Exit Sub
            End If
        Next
    End Sub


keterangan Listing Program :

    sPola = txtFind.Text + "*" : string yang akan dicari
    sbuka = Gridme.Rows(xloop1 - 1).Cells(0).Value : string pembanding dalam Grid dengan alamat cell = 0
    SBetul = UCase(sbuka) Like UCase(sPola) : Proses pembandingan kata yang dicari dengan pembanding

     If SBetul = True Then
           Gridme.CurrentCell = Gridme.Item(0, xloop1 - 1)
           Exit Sub
     End If

    : Jika sBetul = true, maka kursor akan diam row yang sama dengan kata yang dicari

hasilnya akan seperti ini,





demikian cara pencarian dengan menggunakan textbox. semoga bermanfaat.

80 komentar:

  1. mas..mau tanya dong..
    bagaimana caranya filler data berdasarkan type karakter contohnya kita input data ke datagrid view dengan exp: “Type 45-01.. dst, Type 78-01-dst..Type 90-01 dst” setelah itu kita input, lalu kita filter di datagridnya berdasarkan type nya : contoh : Type 45 dgn qty 10 dan type 78 qty 5, Type 90 qty 12 akan tampil secara otomatis di masing2 label yg telah dibuat tp tanpa database

    dan menjumlahkan qty nya berdasarkan type box nya ke dalam label

    aku pakai VB.2005

    Contoh gambar terlampir.
    http://imageshack.us/photo/my-images/585/sample2l.png/

    Thanks..

    BalasHapus
    Balasan
    1. saya asumsikan nama gridnya adalah Gridme. Setiap kali proses memasukkan data ke grid maka harus dilakukan penjumlahan QTY dengan cara looping.

      Private sub CariQty()
      Dim x1 As Double = 0
      Dim x2 As Double = 0
      Dim x3 As Double = 0

      For Each brs As DataGridViewRow In GridMe.Rows

      Select Case brs.Cells(1).Value
      Case "7008"
      x1 += CDbl(brs.Cells(2).Value)
      Case "2225"
      x2 += CDbl(brs.Cells(2).Value)
      Case "362"
      x3 += CDbl(brs.Cells(2).Value)
      End Select
      Next
      txtbox7008.Text = x1
      txtbox2225.Text = x2
      txtbox362.Text = x3
      End sub

      semoga bermanfaat !!

      Hapus
    2. Mantaf......Thanks bangat ya mass..berhasil...
      semoga banyak rejeki & kebaikan dibalas oleh Allah SWT...

      Hapus
    3. Mas..mau tanya lagi nih...
      Kemarin contoh yg diatas aku pakai databasenya access 2003 dan berjalan sesuai dgn yg diharapkan
      Tetapi kemarin aku coba pakai database sql 2005 kenapa ngga bisa ya mas?..
      Sekali lagi terimakasih ya mas..

      Hapus
    4. gak bisanya kenapa Ya.., maksudnya koneksinya atau querynya mungkin ada yang salah. tolong dijelaskan lagi Y.

      Hapus
    5. Koneksi & query nya sih ngga ada yang error dan input atau save datanya jg ngga ada masalah akan tetapi...masalahnya textbox yang untuk tampilkan qtynya tidak berubah tetap angka 0 (nol)
      - pertanyaanya apakah di database Sql yang salah?...
      mas...maaf..karena aku baru pertamakali memakai database SQL

      Thanks

      Hapus
    6. pertanyaannya apakah data sudah ada di grid berikut qty barang ? jika sudah ada maka kesalahannya adalah pada waktu menampilkan hasil kalkulasi atau kemungkinan juga adalah kalkulasi qty yang salah. coba kamu trace/debug di procedure CariQTY. terutama terhadap baris perintah : x1 += CDbl(brs.Cells(2).Value), apakah yang dikalkulasi adalah kolom yang benar. kemudian lihat juga baris perintah ini : Select Case brs.Cells(1).Value
      Case "7008"
      apakah nilai brs.Cells(1).Value sama dengan nilai case. karena dimungkinkan pada waktu pencarian kondisi tidak sama dengan yang di kondisikan : brs.Cells(1).Value <> nilai case (7008,2225,362)
      atau
      misal
      brs.Cells(1).Value = "7008 " tidak akan sama dengan "7008"

      dicoba dulu Y. semoga menjadi solusi..

      Hapus
  2. mas kalo mw ngasih msgbox data tidak ada jika data yang dicari ngak ada gimana yah

    BalasHapus
    Balasan
    1. itu harus menggunakan perintah kondisi. misalnya. struktur programnya seperti dibawah ini :

      Dim SQL as string = " SELECT NIK from TM_Mahasiswa where NIK like "%12%" "
      SQL = SQL & " ORDER BY NIK "

      CheckConnection() ‘ Prosedur koneksi
      PerintahSQL(SQL) ‘ Prosedur eksekusi SQL

      Dim Baca As SqlClient.SqlDataReader = SQLComm.ExecuteReader(CommandBehavior.CloseConnection)

      Try
      If Baca.HasRows Then
      IF Baca.Read Then
      ---- Jika ada, maka tampilkan Data
      Else
      MsgBox(“Data Tidak ditemukan !!”)
      End if
      End If

      Baca = Nothing
      SQLComm.Dispose()
      SQLComm = Nothing
      SQLConn.Close()
      CFunction.FlushMemory()

      Finally
      If Not Baca Is Nothing Then
      Baca.Close()
      Baca = Nothing
      End If
      If Not SQLComm Is Nothing Then
      SQLComm.Dispose()
      SQLComm = Nothing
      End If
      End Try

      kamu bisa copy ini, akan tetapi buat prosedur koneksi dan eksekusi querynya Y. selamat mencoba, semoga dapat dipahami.

      Hapus
  3. assalammualaikum.
    gan, kalo misalnya kayak gini gmn ya codingnya?
    ada 2 sisi filter dan penyaringan
    1. Filter : berdasarkan Tahun dan bulan
    2. Unfilter : menampilkan semua data

    nah ketika pencarian, ada dua kategori pencarian
    1. field kemudian kata/isi field yg di ketik-kan
    nah pencarian tadi akan mencari sesuai data yg sudah difilter.
    mohon bantuannya
    ini screenshot nya : http://imageshack.us/content_round.php?page=done&l=img22/6356/datasurat.png

    BalasHapus
    Balasan
    1. Data yang sudah di Filter harus dimasukkan kedalam tabel temporary menggunkan fungsi Hashtable.. ketika akan difilter dengan kondisi filter baru dari data hasil filter, maka data yang terdapat di tabel temp. difilter dan di tampilkan kedalam grid. untuk fungsi hashtable nanti akan saya bahas... karena perlu pembhasan khusus... terima kasih

      Hapus
  4. permisi mau tnya pada master vb bagaimana cara menjumlahakan field pada datagrid yang sudah difilter

    terima kasih

    BalasHapus
    Balasan
    1. Mis. Nama datagridview adalah GridMe, kolom yang akan dijumlahkan adalah kolom 3

      dim x as integer
      dim Total as Double

      For x = 0 To GridMe.Rows.Count - 1
      If Not DBNull.Value.Equals(GridMe.Rows(x).Cells(3).Value) Then
      Total = Total + CDbl(GridMe.Rows(x).Cells(3).Value)
      End If
      next x

      Hapus
  5. permisi, maaf saya mau tanya, bagaimana caranya SelectedCells otomatis di akhir kolom paling bawah di datagridview pada vb.net, jadi maksudnya otomatis kebawah selected cellnya jika ada item baru...

    BalasHapus
    Balasan
    1. coba dengan perintah
      datagridview1.currentcell = Gridme.Item(0, datagridview1.rowcount - 1)

      Hapus
  6. mas, mau tanya..
    Bagaimana cara filter datagrid (contoh: nis) dengan fungsi InputBox bukan dengan TextBox..

    BalasHapus
    Balasan
    1. sebetulnya inputbox dan textbox hampir sama..
      Inputbox dideklarasikan mis: fDataInput.
      Filterisasi dilakukan terhadap fDatainput
      sedangkan logika programnya sama.

      Hapus
  7. mas gimana ya caranya memilih kata di textbox/label misalanya gini di label tersebut ada 3 kata "1 sepetember 1992" sedangkan saya hanya mebutuhkan 1 kata awalnya yaitu 1 atau kata keduanya yaitu september.. mohon pencerahannya mas :) bls di email juga gag papa : maulidiyaeka@gmail.com

    BalasHapus
  8. kalau seperti yang di contoh kan oleh adik. label tersebut adalah bertipe tanggal (date). kalau adik membutuhkan kata pertama itu bisa dengan fungsi "day(textbox)", kalau kata kedua bisa dengan fungsi "month(textbox)". Jika kata dalam label/textbox adalah berupa kata lain. itu harus unik, misal untuk kata pertama maksimal kata berapa dan kedua berapa, sehingga bisa digunakan fungsi "LEFT" dan "RIGHT" atau dengan fungsi "MID". Karena pemotongan kata di vb.net kemungkinan tidak ada, akan tetapi biasanya fungsi pemotongan per karakter. semoga mambantu..

    BalasHapus
  9. Selamat sore..
    Mas, mau tanya nih, gimana buat kodingnya.?
    Saya menggunakan combobox untuk pilihan memfilter data berdasarkan kriteria yg di ingginkan, textbox untuk pencarian datanya, dan command cari untuk eksekusi.
    Setelah command eksekusi di klik, maka data di datagrid otomatis kan hanya menampilkan data sesuai yang di cari saja, la untuk merefreshnya kembali agar semua data bisa tampil semua seperti semula seperti saat sebelum di filter saya buatkan command refresh, gimana ya kodingnya di command refresh itu mas..?
    Saya menggunakan database mysql
    Trims, mohon bantuanya..

    BalasHapus
    Balasan
    1. Selamat Sore Mas Aries, Maaf Baru di balas sehubungan dengan banyaknya pekerjaan. Agar merefresh data kembali maka dibuat prosedur Refresh/Getdata. Algoritmanya adalah ketika pertama kali menampilkan data pergunakan prosedur Getdata. dan ketika klik refreshpun memanggil prosedur GetData. Agar tidak menambah row dan dibuatkan row baru. tambahkan perintah datagridview1.rowcount() = 1 sebelum perintah menampilkan datanya di dalam prosedur. agar row menjadi satu baris kembali. mudah-mudahan bisa membantu

      Hapus
  10. selamat siang mas,
    mau tanya ni mas, kebetulan lgi mentok ni mas,
    gimana caranya buat kodingnya !
    kemungkinan pilihan kata , contoh aplikasinya seperti saat kita mencari sebuah kata pasa geogle langsung muncul beberapa kata lain yang terkait dengan kata yang dicari. dengan mengunakan vb 6.
    atas solusinya saya ucapkan matur nuwun yo mas..

    BalasHapus
    Balasan
    1. mbak eka.. untuk vb 6 nanti saya coba eksperimen dulu y.. maaf... kalau untuk vb.net bisa lihat di tulisan..TextBox AutoComplete dengan Database sebagai Data Source .. semoga bermanfaat

      Hapus
    2. om saya juga mau tanya saya juga masalahnya sama kaya ibu asrul eka ini, gimana yah

      Hapus
  11. Makasih kang asep atas share nya..saya numpang baca2 ya kang ..maklum abdi teh nubie ....sangat bermanfaat sekali blognya ..semoga allah merahmati pahala kepada kang asep dan keluarga ..amin :D ..kang kalo saya mau kontak ..kemana ? punya email atuh kang ? kirim ke email saya atuh kontak na :D nuhun pisan ..wassalam

    BalasHapus
    Balasan
    1. ini alamat email saya : aapermana035@gmail.com

      Hapus
  12. kang asep. saya punya masalah, saya ingin menampilkan beberapa data yang perlu saja ke datagridview, inginya memfilter dulu nama supliernya, trus setelah ketemu baru barang-barang milik suplier tersebut tampil ke datagridview, tp tampilannya dimasukkan ke colom datagridview yang sudah kita buat.
    mohon pencerahanya master

    BalasHapus
    Balasan
    1. untuk filter nama supplier, mas wahyu bisa pake di tulisan saya tentang : TextBox AutoComplete dengan Database sebagai Data Source . trus buat event ketika klik button dan masukkan kodingnya... contoh sbb :

      Dim SQL As String = ""

      SQL = SQL & "Select KdBarang,NmBarang from masterbarang "
      SQL = SQL & "where NmSupplier like '" & TxtNmSupplier & "'" order by NmBarang"

      CheckConnection() ' Konerksi Database
      PerintahSQL(SQL) 'Eksekusi Query

      Dim Baca As SqlClient.SqlDataReader = SQLComm.ExecuteReader(CommandBehavior.CloseConnection)
      Dim R As Integer = 1

      dgListData.RowCount = 1 ' Nama Gridnya adalah dgListData

      Try
      If Baca.HasRows Then

      Do While Baca.Read
      dgListData.Rows.Add(1)
      dgListData.Rows(R - 1).Cells(0).Value = CFunction.SNull(Baca("KdBarang"))
      dgListData.Rows(R - 1).Cells(1).Value = CFunction.SNull(Baca("NmBarang"))
      R = R + 1
      Loop
      End If

      Baca = Nothing
      SQLComm.Dispose()
      SQLComm = Nothing
      SQLConn.Close()
      CFunction.FlushMemory()

      Finally
      If Not Baca Is Nothing Then
      Baca.Close()
      Baca = Nothing
      End If
      If Not SQLComm Is Nothing Then
      SQLComm.Dispose()
      SQLComm = Nothing
      End If
      CFunction.FlushMemory()
      End Try

      CFunction.FlushMemory()
      End Sub

      semoga berhasil...

      Hapus
  13. mas mw tanya gimana kalau ada 2 textbox untuk pencarian pas masukin kata di textbox yang pertama pada tabel akan muncul hanya daftar yang sesuai. dan setelah itu ketikan d textbox kedua muncul sesuai kata d textbox kedua yang hanya memfiter dari daftar di textbox pertama tadi...

    BalasHapus
    Balasan
    1. harus menggunakan dua datagrid agar tidak ambigous... menggunakan satu datagrid bisa tetapi harus ada event klik untuk prosesny agar sistem aplikasi berjalan dengan baik. untuk menampilkan d gridnya bisa lihat di komen lainnya..

      Hapus
  14. assalamualaikum.....bang mau nanya bang??
    gimana ya kalau isi record yang ada di datagridview1.. dimunlkan diform tanpa harus difilter,hanya diklik ajah datagridnya lalu datanya akan mucnul diform !!
    terima kasih

    BalasHapus
    Balasan
    1. wa'alaikum salaam..
      coba list Prog dibawah.. saya asumsikan form yang dimaksud adalah textbox..

      For Each brs As DataGridViewRow In datagridview1.selectedrows
      Text1.Text = brs.Cells(0).Value 'kolom 0
      text2.Text = brs.Cells(2).Value 'kolom 1
      text3.Text = brs.Cells(3).Value 'kolom 2
      Next

      semoga bermanfaat..!

      Hapus
    2. bang yang koding yang itu kok gak berhasil ya?
      ketika di klik/diselect tetep aja gak mucul di textbox

      Hapus
  15. Mas jika saya mau masukan data d datagrifview tapi data tersebut belum masuk ke database lalu saya ingin data yg masuk d datagrifview tidak boleh data nya sama gmana tu mas

    BalasHapus
    Balasan
    1. harus menggunakan dua datagrid. data grid yang satu adalah data yang memang belum dimasukan ke dalam database, sedangkan yang satunya adalah data yang terdapat dalam database. dalam kedua datagrid tersebut kolom pertama adalah kode unik.
      kemudian buat satu button insert ke database. list prog dalam event klik button coba masukkan seperti dibawah ini :

      dim pText as string
      dim row as integer = 0

      For Each brs As DataGridViewRow In datagridview1.selectedrows
      pText = brs.Cells(0).Value 'memasukan nilai kode di datagrid1 kedalam variabel pText
      Next

      For Each brs2 As DataGridViewRow In datagridview2.rows
      if brs2.cells(0).value = pText then
      msgbox('Data sudah dipilih !')
      else
      datagridview2.rows.insert(row,pText) ' memasukkan data kedalam grid
      ' list untuk memasukkan ke dalam database
      endif
      Next


      semoga bermanfaat.. !

      Hapus
  16. mau nanya... klo hanya mnampilkan bulan dan tahun di datagridview gmna ya ?

    BalasHapus
    Balasan
    1. mas Indra.. mis: Tabel Transaksi dengan Field Sbb : ID, TanggalTransaksi, Namabarang, Qty. Maka untuk menampilkan bulan dan tahun tanggal transaksi adalah menggunakan query sbb :

      Select Month(TanggalTransaksi),Year(TanggalTransaksi) from Transaksi order by ID

      maka akan ditampilkan bulan dan tahun. untuk proses view ke datagridview sudah dijelaskan.
      semoga membantu...

      Hapus
  17. mas,,, cara untuk mengetahui berapa kali button di klik gmn ya?
    terima kasih sebelum nya

    BalasHapus
    Balasan
    1. Dim Xcounter as integer = 0

      Private Sub btnAdd_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnAdd.Click
      xCounter = xcounter = 1
      msgbox("Jumlah Button di klik adalah : " & xcounter)
      End Sub

      Hapus
  18. Assalamu'alaikum...salam kenal mas, mau nanya seputar postingan yg judulnya "Metoda pencarian kata dengan textbox di datagridview ", ane sdh coba tapi koq g bisa berhasil ya?? ane sdh cek ternyata variabel "sbetul" gak pernah "True", jadi perintah selectionrow - nya gak pernah berhasil. mohon solusinya...Makasih. Wassalam

    BalasHapus
    Balasan
    1. sPola = txtFind.Text + "*" : string yang akan dicari
      sbuka = Gridme.Rows(xloop1 - 1).Cells(0).Value : string pembanding dalam Grid dengan alamat cell = 0
      SBetul = UCase(sbuka) Like UCase(sPola) : Proses pembandingan kata yang dicari dengan pembanding

      kemungkinan sbuka sebagai pembanding salah cell. diatas ada Cells(0). itu adalah kolom ke 1. coba di trace dengan mengubah nilai cell nya...

      Hapus
  19. Assalamu' alaikum...., mau nanya, kalau pencariannya berdasarkan tanggal gimana ya, saya pakai database access dan vb 2010...., terimakasih sebelumnya.

    BalasHapus
    Balasan
    1. wa'alaikum salaam.. harus melihat isi dari tabel tanggalnya, apakah isinya datetime atau date.. jika datetime digunkan perintah between...misalnya pencarian tanggal 10 november 2014, maka di querynya diberi kriteria between --> select * from gudang where tgl between '2014-11-10 00:01' and '2014-11-10 23:59'

      yang membedakannya adalah jamnya..
      mungkin demikian.. semoga membantu

      Hapus
  20. Assalamualaikum.. Mas tnyk . gmna codingnya nampillin data dari database ke datagridview, tpy data gridnya itu ada dua, dan nampilinya dari dari database itu juga beda.. jadi misal table1 di database, dimasukkan ke data grid1, lalu table2 di database dimasukkan ke data grid2, tetapi masih dalam satu database dan satu form, aku pakek vb.net 2012..

    mohon bantuanya mas ..???
    MKSIH. assalamuallaikum.

    BalasHapus
    Balasan
    1. mas Indra, itu bisa di buat dua prosedure dengan dua koneksi yang berbeda.
      misal :
      Untuk grid 1, buat prosedure GetData1 dimana koneksi stirngnya ke database 1
      kemudian buat prosedure Getdata2 dimana koneksi stringnya ke database 2
      kemudian panggil kedua prosedure tersebut secara bersamaan, misalnya di event formload
      call getdata1
      call Getdata2

      semoga bermanfaat..

      Hapus
  21. Mas asep mau bertanya bagaimana merubah format grid misalkan colom harga mau dirumah menjadi curency maksi sebelumnya mas

    BalasHapus
    Balasan
    1. Mas Aswar, cara 1
      1. Klik kanan Grid, kemudian pilih edit coloumns
      2. Klik kolom harga, Kemudin cari DefaultCellStyle dan klik tombol tanda ...untuk masuk ke propertiesnya
      3. di kolom Format klik tombol ...
      4. maka akan keluar Format string dialog..

      Cara 2 adalah di list Programnya dengan dengan melakukan format data.
      misalnya
      dgListData.Rows(R - 1).Cells(1).Value = Microsoft.VisualBasic .FormatCurrency(Cdbl(Harga),n2)

      semoga bermanfaat

      Hapus
    2. thanks mas Asep semoga selalu diberikan ilmu yang banyak mas

      Hapus
  22. assalamu'alaikum
    mas mau tanya , gimana nampilin data di datagridiew dengan nomor urut secara otomatis

    BalasHapus
  23. wa'alaikum salaam, Mbak Sita, pada waktu proses loopingnya command pertama dimasukkan misal :

    dim R as integer = 1
    Do While Baca.Read
    dgListData.Rows.Add(1)
    dgListData.Rows(R - 1).Cells(0).Value = R -- ini untuk nomor urutnya
    dgListData.Rows(R - 1).Cells(1).Value = CFunction.SNull(Baca("NmBarang"))
    R = R + 1
    Loop

    wassalam,

    BalasHapus
  24. Assalamu'alaikum

    mas misalnya saya buat 1 combobox sama 3 textbox,nah klo saya isi comboboxnya 3 textbox akan terisi secara otomatis....

    saya pake koneksi mysql

    caranya gimana y....??

    BalasHapus
    Balasan
    1. untuk masalah koneksi silahkan lihat di bahasan Cara VB.NET Koneksi ke Database MySQL dan Oracle..
      sedangkan untuk menampilkan data ke textbox adalah dibuat dalam even DropDownclosed

      Private Sub CmbGroup_DropDownClosed(ByVal sender As Object, ByVal e As System.EventArgs) Handles CmbGroup.DropDownClosed

      Dim SQL as string = " SELECT NIK, Nama, Kelas from TM_Mahasiswa where NIK = "001" "


      CheckConnection() ‘ Prosedur koneksi
      PerintahSQL(SQL) ‘ Prosedur eksekusi SQL

      Dim Baca As SqlClient.SqlDataReader = SQLComm.ExecuteReader(CommandBehavior.CloseConnection)

      Try
      If Baca.HasRows Then
      IF Baca.Read Then
      ---- Jika ada, maka tampilkan Data
      txtbox1.text = CFunction.SNull(Baca("NIK"))
      txtbox2.text = CFunction.SNull(Baca("Nama"))
      txtbox3.text = CFunction.SNull(Baca("Kelas"))
      Else
      MsgBox(“Data Tidak ditemukan !!”)
      End if
      End If

      Baca = Nothing
      SQLComm.Dispose()
      SQLComm = Nothing
      SQLConn.Close()
      CFunction.FlushMemory()

      Finally
      If Not Baca Is Nothing Then
      Baca.Close()
      Baca = Nothing
      End If
      If Not SQLComm Is Nothing Then
      SQLComm.Dispose()
      SQLComm = Nothing
      End If
      End Try

      End Sub

      Hapus
  25. gan, knp "gridme" nya gk bisa y ?
    maaf gan sy msih newbe

    BalasHapus
    Balasan
    1. grid nya diberi nama gridme..gridme ini adalah nama dari dbgrid-nya

      Hapus
  26. assalamu'alaikum
    saya mau tanya pak, kalo cara bikin no urut otomatis berdasarkan tgl gimana yah ?

    BalasHapus
    Balasan
    1. wa'alaikum salam..
      mas yuda.. di querynya di order by berdasar tanggal misalnya :

      Select Row_Number()Over(Order By TanggalBeli) as NoUrut, Namabarang, TanggalBeli from MasterBarang order by Tanggalbeli Asc

      Selamat Mencoba

      Hapus
  27. Mas mau nnya gimana sih caranya nampilin texbox dengan pilihan dari combobox dengan database ms.access

    BalasHapus
  28. untuk masalah koneksi silahkan lihat di bahasan Cara VB.NET Koneksi ke Database MySQL dan Oracle..
    sedangkan untuk menampilkan data ke textbox adalah dibuat dalam even DropDownclosed

    Private Sub CmbGroup_DropDownClosed(ByVal sender As Object, ByVal e As System.EventArgs) Handles CmbGroup.DropDownClosed

    Dim SQL as string = " SELECT NIK, Nama, Kelas from TM_Mahasiswa where NIK = "001" "


    CheckConnection() ‘ Prosedur koneksi
    PerintahSQL(SQL) ‘ Prosedur eksekusi SQL

    Dim Baca As SqlClient.SqlDataReader = SQLComm.ExecuteReader(CommandBehavior.CloseConnection)

    Try
    If Baca.HasRows Then
    IF Baca.Read Then
    ---- Jika ada, maka tampilkan Data
    txtbox1.text = CFunction.SNull(Baca("NIK"))
    txtbox2.text = CFunction.SNull(Baca("Nama"))
    txtbox3.text = CFunction.SNull(Baca("Kelas"))
    Else
    MsgBox(“Data Tidak ditemukan !!”)
    End if
    End If

    Baca = Nothing
    SQLComm.Dispose()
    SQLComm = Nothing
    SQLConn.Close()
    CFunction.FlushMemory()

    Finally
    If Not Baca Is Nothing Then
    Baca.Close()
    Baca = Nothing
    End If
    If Not SQLComm Is Nothing Then
    SQLComm.Dispose()
    SQLComm = Nothing
    End If
    End Try

    End Sub

    selamat Mencoba

    BalasHapus
  29. Mantap banget bang!!! Thanksssss!!!!

    BalasHapus
  30. mas mau nanya, untuk mendapat nilai dari combobox ke textbox dimana data yang ada pada combo box tersebut didapat dari dari database lgsung. jadi misal pada combox ada data "M-Meja", pada saat di ketik "M" saja di combobox maka di textbox akan keluar Meja..mohon pencerahannya mas.nuhun

    BalasHapus
    Balasan
    1. buat dicombobox prosedure TextChanged..
      didalamnya buat pencarian data terhadap kata/huruf yang diketik. tapi dengan procedure ini akan berat sekali, lebih baik dengan prosedure combobox dropdown closed, jadi ketika dipilih, maka di textbox akan keluar data yang dimaksud.

      Private Sub cmbSupplier_DropDownClosed(sender As Object, e As System.EventArgs) Handles cmbSupplier.DropDownClosed
      -------- buat perintah pencarian data berdasarkan kata yang dipilih.
      End Sub

      semoga bermanfaat

      Hapus
  31. mas mau tanya gimana cara nya supaya data yang ada di dbgridview tidak dapat di hapus,saat di klik hapus???

    BalasHapus
  32. mas mau tanya gimana cara nya supaya data yang ada di datagridview tidak dapat di hapus,saat di klik hapus??

    BalasHapus
    Balasan
    1. pertama : datagridview diberi status read only.
      kedua : ketika klik hapus, jangan diberi perintah :
      For Each brs As DataGridViewRow In dgListPO.SelectedRows
      dgListPO.Rows.Remove(brs) --- untuk melakukan remove data pada baris terpilih
      Next

      demikian.. semoga bermanfaat

      Hapus
  33. KANG KOK SY TIDAK BISA MENCARI DATA DI GRID SESUAI DENGAN NAMA YANG SAYA CARI YAH.. MALAH YANG BISA DI CARI CUMA HURUF PERTAMA DARI NAMA TERSEBUT..

    BalasHapus
    Balasan
    1. boleh saya lihat list prog.nya mas..untuk proses pencariannya..mungkin bisa saya bantu..

      terima kasih.

      Hapus
  34. Terima kasih gan udah share. Banyak situs yang kucari gak bisa. Berkunjung kesitus agan tugasku selesai. Terima kasih gan

    BalasHapus
  35. gan gimana cara cari data dari db dengan panggil nomor registrasi sama tapi yang ditampilin dari data yang dibawah atau yang baru dimasukan

    BalasHapus
    Balasan
    1. pada dasarnya proses pencariannya sama, tinggal proses koneksi ke databasenya. Karena agan menggunakan database access, maka koneksi akses database silahkan lihat di pembahasan connection string, disana dijelaskan mengenai koneksi ke database access.

      querynya sbb : Select top 1 ID, Noregistrasi, Nama, NoTransaksi, Jumlah from dbtransaksi where Noregistrasi = '" & txtNoregistrasi.txt & "' order by ID desc.

      data yang akan keluar adalah noregistrasi dngan data yang baru dimasukkan.
      agan tinggal memasukkan datanya kedlam object (apakah text box atau grid).

      mungkin demikian. Kalau tdak jelas silahkan pertanyaannya diperjelas dengan gambar, agar saya bisa buat listprogramnya.

      terima kasih

      Hapus
  36. assalaamualaikum warahmatullohi wabarokatuh,,, pak kalau data yang dicarinya di kolom nomor 2 bagaimana caranya?

    BalasHapus
    Balasan
    1. Wa'alaikum salam ... Perlu diketahui untuk grid kolom 1 = kolom 0, kolom 2 = kolom 1 dst.

      Proses Look Up ada pada listing Prog sbb :
      For xloop1 = 1 To Gridme.RowCount - 1
      sbuka = Gridme.Rows(xloop1 - 1).Cells(0).Value
      SBetul = UCase(sbuka) Like UCase(sPola)

      If SBetul = True Then
      Gridme.CurrentCell = Gridme.Item(0, xloop1 - 1)
      Exit Sub
      End If
      Next

      Pada list Gridme.Rows(xloop1 - 1).Cells(0).Value adalah dimana cellls menetukan kolom.
      sehingga jika pencarian berdasarkan kolom 2 nilai 0 menjadi 1.

      Gridme.Rows(xloop1 - 1).Cells(1).Value

      demikian semoga membantu.

      Hapus
  37. Assalamualaikum master kang Asep
    mau tanya kalau untuk pencarian namun ingin menampilkan hasil sesuai dengan yang dicari saja . yang lainnya tidak ditampilkan itu bagaimana ya kang ?
    mohon solusinya

    BalasHapus
    Balasan
    1. ketika ditemukan datanya, sebelum dimasukan ke grid.. ketikan perintah dbgrid.rowcount = 1.. kemudian datanya masukan ke grid. maka yang akan tampil data yang dicari saja.

      Hapus
  38. Kang Asep , Mau nanya .
    gimana caranya memberikan rumus di di colom gridview tpi ada if nya ?

    BalasHapus
    Balasan
    1. gunakan event grid..

      misalnya nama gridnya adalah DgView untuk event input data di kolom 2

      Private Sub Dgview_CellEnter(sender As Object, e As System.Windows.Forms.DataGridViewCellEventArgs) Handles DgView .CellEnter
      If e.ColumnIndex = 2 Then '' dikolom 2 akan dibeikan rumus
      ''isi rumus yang dinginkan
      End If
      End Sub

      maka ketika ada event input di cell, sistem akan memmilih apakah cell kolom 2, ketika di cell 2..proses akan dilanjutkan..jika bukan maka akan keluar dari prosedur tersebut..

      semoga bermanfaat..

      Hapus
  39. Mantab kang. Terimakasih banyak ilmunya.

    BalasHapus
  40. Mau tanya mas, Kalo nambah item combobox yang di ambil dari column datagridview gimana caranya?

    BalasHapus
  41. gunakan looping datagrid.

    Misal : nama Grid nya adalah DgList
    yang akan ditambahkan adalah kolom ke 3 dari datagrid
    Nama Combonya adalah ListCombo

    Buat Prosedur :

    Private Sub IsiCombo()

    For xloop1 = 1 To DgList.RowCount - 1
    xItem = DgList.Rows(xloop1 - 1).Cells(2).Value '-- Item Kolom ke 3 dari grid

    ListCombo.Items.Add(xItem)

    Next

    End Sub

    BalasHapus