Linkleri görebilmek ve üye ayrıcalıklarından faydalanabilmek için ücretsiz kayıt olun.
İki listeyi karşılaştırıp Tekrarlanan Kayıtları silme
Bu makro, bir (asıl) listeyi başka bir listeyle karşılaştırır ve asıl listede de olan öğeleri ikinci listeden siler. İlk liste, Sayfa1'de A2:A200 aralığındadır. İkinci liste, Sayfa1'de A2:A500 aralığındadır. Makroyu kullanmak için, sayfalardan birini seçin ve makroyu çalıştırın.
- Kod: Tümünü seç
Sub ikilisteTekrarYok()
Dim iListCount As Integer
Dim iCtr As Integer
' Makroyu hızlandırmak için ekran güncelleştirmeyi kapatın.
Application.ScreenUpdating = False
' Aranacak kayıt sayısını alın (silinecek liste).
iListCount = Sheets("Sayfa2").Range("A2:A500").Rows.Count
' "asıl" liste içinde döngü gerçekleştirin.
For Each x In Sheets("Sayfa1").Range("A2:A200")
' İkinci listedeki tüm kayıtlar için döngü gerçekleştirin.
For iCtr = 1 To iListCount
' Sonraki kaydı karşılaştırın.
' Farklı bir sütun belirtmek için, sütun numarasını 1 artırın.
If x.Value = Sheets("Sayfa2").Cells(iCtr, 1).Value Then
' Eşleşme true değerine sahipse satırı silin.
Sheets("Sayfa2").Cells(iCtr, 1).Delete xlShiftUp
' Silinen satırı göz önüne alarak sayacı artırın.
iCtr = iCtr + 1
End If
Next iCtr
Next
Application.ScreenUpdating = True
MsgBox "Tekrarlanan Kayıtlar Silindi!"
End Sub