listview1' de iki sütuna göre arama

sirkülasyon

Altın Üye
Katılım
10 Temmuz 2012
Mesajlar
2,520
Excel Vers. ve Dili
2021 LTSC TR
Altın Üyelik Bitiş Tarihi
18-06-2026
Private Sub ListView1_Click() prosedürü için
Listview1’ de Seçilen satırı “ARŞİV” sayfası 3. Satırdan itibaren I sütünunda listview1diğer sütundaki veriyi de
“ARŞİV” sayfası 3. Satırdan itibaren J sütünunda birebir arayarak
B:Y arasında Bulunan tüm satırları listview2 ye aktarabilme için yardımcı olabilir misiniz?
 

muhasebeciyiz

Altın Üye
Katılım
10 Şubat 2006
Mesajlar
637
Excel Vers. ve Dili
Office 2016
64 Bit
Altın Üyelik Bitiş Tarihi
21-12-2027
Kod:
Private Sub ListView1_Click()
    Dim ws As Worksheet
    Dim i As Integer
    Dim j As Integer
    Dim selectedItem As String
    Dim otherItem As String
    Dim found As Boolean
    Dim lr As Long
    
    Set ws = ThisWorkbook.Sheets("ARŞİV")
  
    selectedItem = ListView1.selectedItem.ListSubItems(1).Text
    otherItem = ListView1.selectedItem.ListSubItems(2).Text
    
    ListView2.ListItems.Clear
    
    lr = ws.Cells(ws.Rows.Count, "I").End(xlUp).Row
    For i = 3 To lr
        If ws.Cells(i, "I").Value = selectedItem And ws.Cells(i, "J").Value = otherItem Then
            found = True
            
            Dim ListItem As ListItem
            Set ListItem = ListView2.ListItems.Add(, , ws.Cells(i, "B").Value)
            
            For j = 3 To 25
                ListItem.ListSubItems.Add , , ws.Cells(i, j).Value
            Next j
        End If
    Next i
    
    If Not found Then
        MsgBox "Kayıt bulunamadı.", vbInformation, "Bilgi"
    End If
End Sub
ListView1'de seçilen satırdaki ilk iki sütun verisini alır ve "ARŞİV" sayfasının I ve J sütunlarında bu değerleri arar. Eğer eşleşen bir satır bulunursa, bu satırdaki B:Y arasındaki tüm verileri ListView2'ye ekler. Ayrıca, ListView2 temizlenir ve yeni veriler eklenir.

Hocam deneyiniz
 
Üst