Listview Sorunu

Katılım
9 Ocak 2009
Mesajlar
557
Excel Vers. ve Dili
2002 TÜRKÇE
2007 TÜRKÇE
2010 TÜRKÇE
2019 TÜRKÇE
Merhabalar;
İki adet Listview var. Listview1' e U sütunundaki benzersiz verileri listeliyorum fakat Listview1' e tıklayınca Listview2' ye T sütununda karşılık gelen verileri listeleyemedim.
Yardımcı olur musunuz.
 

muhasebeciyiz

Altın Üye
Katılım
10 Şubat 2006
Mesajlar
559
Excel Vers. ve Dili
Office 2016
64 Bit
Altın Üyelik Bitiş Tarihi
21-12-2027
Sorununuzu çözmenize yardımcı olmak için birkaç adım önerebilirim:

1. ListView1'in onItemClick olayını kontrol edin.
ListView1'e tıklandığında tetiklenen olay, onItemClick olayıdır. Bu olayda, tıklanan öğenin konumunu ve diğer bilgilerini parametre olarak alırsınız.
Tıklanan öğenin konumunu kullanarak, U sütunundaki benzersiz veriyi alabilirsiniz.
Daha sonra, T sütununda bu benzersiz veriye karşılık gelen verileri bulmak için bir sorgu çalıştırabilirsiniz.
Bulunan verileri ListView2'ye doldurun.

2. Sorguyu doğru şekilde yazdığınızdan emin olun.
Sorgu, U sütunundaki benzersiz veriyi T sütunundaki verilerle eşleştirmelidir.
Doğru sütun adlarını ve eşleştirme kriterlerini kullandığınızdan emin olun.

3. Veritabanı bağlantınızın doğru olduğundan emin olun.
Sorguyu çalıştırmadan önce veritabanına bağlı olduğunuzdan emin olun.
Bağlantıda bir sorun varsa, sorgu çalışmaz.

4. Hata ayıklama yapın.
Sorun devam ederse, hata ayıklama yapmanız gerekir.
Kodunuzu adım adım inceleyin ve hataları bulun.
Gerekirse, hata ayıklama araçlarını kullanın.
 
Katılım
9 Ocak 2009
Mesajlar
557
Excel Vers. ve Dili
2002 TÜRKÇE
2007 TÜRKÇE
2010 TÜRKÇE
2019 TÜRKÇE
For Bak = 2 To s1.Cells(Rows.Count, "u").End(xlUp).Row
If s1.Cells(Bak, "u") = ListView1.SelectedItem Then
Set List = .ListItems.Add(, , s1.Cells(Bak, "t").Value)
End If
Next

Bu şekil birşeyler yaptım ama olmadı
 

muhasebeciyiz

Altın Üye
Katılım
10 Şubat 2006
Mesajlar
559
Excel Vers. ve Dili
Office 2016
64 Bit
Altın Üyelik Bitiş Tarihi
21-12-2027
Private Sub ListView1_ItemClick(ByVal sender As Object, ByVal e As EventArgs) Handles ListView1.ItemClick

Dim Bak As Long
Dim List As ListItem

For Bak = 2 To s1.Cells(Rows.Count, "u").End(xlUp).Row
If s1.Cells(Bak, "u") = ListView1.SelectedItem.Text Then

Set List = ListView2.ListItems.Add(, , s1.Cells(Bak, "t").Value)
ListView2.ListItems(List.Index).ListSubItems.Add , , s1.Cells(Bak, "v").Value

End If
Next Bak
ListView2.Refresh

End Sub
 

muhasebeciyiz

Altın Üye
Katılım
10 Şubat 2006
Mesajlar
559
Excel Vers. ve Dili
Office 2016
64 Bit
Altın Üyelik Bitiş Tarihi
21-12-2027
Private Sub ListView1_ItemClick(ByVal sender As Object, ByVal e As EventArgs) Handles ListView1.ItemClick

If ListView1.SelectedItems.Count > 0 Then
Dim u As String
u = ListView1.SelectedItems(0).Text

Dim Bak As Long
For Bak = 2 To s1.Cells(Rows.Count, "u").End(xlUp).Row

If s1.Cells(Bak, "u") = u Then

ListView2.Items.Remove(ListView2.Items(Bak - 2))

Exit For
End If
Next Bak
End If
End Sub


Haklısınız, ListView2.Items.Clear satırı tüm verileri silmektedir.
Bu kere, ListView2.Items.Remove fonksiyonu, seçilen öğeyi silmek için kullanılır.
 
Katılım
9 Ocak 2009
Mesajlar
557
Excel Vers. ve Dili
2002 TÜRKÇE
2007 TÜRKÇE
2010 TÜRKÇE
2019 TÜRKÇE
Üstat olmuyor maalesef başlık hata verdi Handles ListView1.ItemClick
Normalde de listelemedi
 

muhasebeciyiz

Altın Üye
Katılım
10 Şubat 2006
Mesajlar
559
Excel Vers. ve Dili
Office 2016
64 Bit
Altın Üyelik Bitiş Tarihi
21-12-2027
Private Sub ListView1_Click()
Dim selectedValue As String
Dim i As Long
Dim itemCount As Long

If ListView1.SelectedItems.Count > 0 Then
selectedValue = ListView1.SelectedItems(0).Text
Else
Exit Sub
End If

ListView2.ListItems.Clear

itemCount = 0
For i = 1 To ListView2.ListItems.Count
If ListView2.ListItems(i).SubItems(1) = selectedValue Then
ListView2.ListItems.Add , , ListView2.ListItems(i).Text
itemCount = itemCount + 1
End If
Next i

If itemCount = 0 Then
MsgBox "ListView2'de eşleşen veri bulunamadı.", vbInformation
End If
End Sub

ListView1'de bir öğe tıklandığında ListView2'de T sütunundaki karşılık gelen verileri listeleyebilmeniz lazım.Denermisiniz

"Handles ListView1.ItemClick" satırında hata oluşmasının birkaç olası nedeni vardır:
ListView1 Nesnesi Mevcut Değil veya ItemClick Olayı İşlenmiyor:

Bu kod, ListView2'yi temizlemez, yalnızca ListView1'de seçilen öğenin karşılık gelen değerlerini ListView2'ye ekler veriler silinmez

Private Sub ListView1_Click()
Dim u As String
u = ListView1.SelectedItems(0).Text

Dim Bak As Long
For Bak = 2 To s1.Cells(Rows.Count, "T").End(xlUp).Row
If s1.Cells(Bak, "U").Value = u Then
ListView2.Items.Add Text:=s1.Cells(Bak, "T").Text
End If
Next Bak
End Sub
 
Son düzenleme:
Katılım
9 Ocak 2009
Mesajlar
557
Excel Vers. ve Dili
2002 TÜRKÇE
2007 TÜRKÇE
2010 TÜRKÇE
2019 TÜRKÇE
Teşekkür ederim.
 
Üst