Skip to main content

AccessTr.neT


Textboxda arama kriteri hakında

Textboxda arama kriteri hakında

Çözüldü #1

Private Sub TextBox1_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox1.TextChanged
        arabul()
    End Sub
    Private Sub arabul()
        Dim baglan As OleDb.OleDbConnection = New OleDb.OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=tablolar.mdb;")
        Dim adp As New OleDb.OleDbDataAdapter()
        adp.SelectCommand = New OleDb.OleDbCommand("Select * From faaliyetkodlari", baglan)

        baglan.Open()

        Dim ds1 As New DataSet()
        adp.Fill(ds1)

        baglan.Close()

        ListView1.Items.Clear()
        For Each i As DataRow In ds1.Tables(0).Rows

            If (i("Aciklama").ToString().StartsWith(TextBox1.Text)) Then
                Dim item As New ListViewItem(i("Kod").ToString())
                item.SubItems.Add(i("Aciklama").ToString())
                ListView1.Items.Add(item)

            End If
        Next
    End Sub

Bu kod Textbox1 e yazarak veritabanında arama yapabiliyorum.

Benim istediğim cümle içindeki kelimede ve büyük küçük harfe DUYARSIZ olarak arama yapması.

Örnek:

Aranacak kelime = "Muhasebe"

Arama Cümlesi(verilerimizdeki faaliyet açıklaması) = " Defter Tutma ve Buna Benzer Muhasebe,Muhasebeye Benzer İşler"



Şümdi ben Textbox1 e "muhasebe" yada "muh" yazdığımda bu satırı bana bulamıyacak, ben cümle veya cümleler içinde de arama yapmasını istiyorum.

Teşekkürler

Ek Dosyalar
 faaliyet kod.rar(170.69 KB)
drummers, 11-05-2009 tarihinden beri AccessTr.neT üyesidir.
Cevapla
Çözüldü #2
Aşağıda kş şekilde yazarsanız size hazır veri gelir sizde ayrıca cümle içinde aramazsınız
Select * From faaliyetkodlari where aciklama like %muh% 
siz bu şekilde zaten bulabiliyormuşsunuz.

O zaman şu şekilde yapmalısınız.
Bu kalıp sizin aradığınız kısmı aradığınız metinde olup olmadığını belirler. Kod Vba için ama mantık VB.NET içinde aynı.

For i = 1 To Len(Me.ANAMETIN)
 
If Mid(Me.ANAMETIN, i, len(me.ARANANMETIN) ) = me.ARANANMETIN Then
Msgbox "Aranan Metin Pozisyonu : " & i 

End If

Next

Cevapla
Çözüldü #3

Private Sub arabul()
        ListView1.Items.Clear()
        Dim baglan As OleDb.OleDbConnection = New OleDb.OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=tablolar.mdb;")
        Dim adp As New OleDb.OleDbDataAdapter()
        adp.SelectCommand = New OleDb.OleDbCommand("SELECT faaliyetkodlari.Kod, faaliyetkodlari.Aciklama FROM faaliyetkodlari WHERE faaliyetkodlari.Aciklama Like '%" & Me.TextBox48.Text & "%' ", baglan)
        baglan.Open()
        Dim ds1 As New DataSet()
        adp.Fill(ds1)
        baglan.Close()
        Dim item As New ListViewItem
        For Each row As DataRow In ds1.Tables(0).Rows
            item = ListView1.Items.Add(row.Item("Kod"))
            item.SubItems.Add(row.Item("Aciklama"))
        Next
    End Sub


Private Sub ListView1_ItemChecked(ByVal sender As System.Object, ByVal e As System.Windows.Forms.ItemCheckedEventArgs) Handles ListView1.ItemChecked
        If (e.Item.Checked) Then
            TextBox7.Text += e.Item.SubItems(0).Text.ToString() '& " - " & e.Item.SubItems(1).Text.ToString()
            'Kayit.TextBox22.Text += e.Item.SubItems(1).Text.ToString()
        End If
    End Sub

Sorunu böyle aştım.
drummers, 11-05-2009 tarihinden beri AccessTr.neT üyesidir.
Cevapla

Bir hesap oluşturun veya yorum yapmak için giriş yapın

Yorum yapmak için üye olmanız gerekiyor

ya da