Eşleşmeyenleri Silme

Katılım
24 Aralık 2007
Mesajlar
130
Excel Vers. ve Dili
2007 Tr
Sub Emre()
Dim evn As Range
Dim i As Integer
Application.ScreenUpdating = False
For i = Sayfa1.Range("A65536").End(3).Row To 2 Step -1
Set evn = Sayfa2.Columns(2).Find(Sayfa1.Cells(i, 2), , xlValues, xlWhole)
If Not evn Is Nothing Then
Sayfa1.Rows(i).Delete
End If
Next i
Application.ScreenUpdating = True
i = Empty
Set evn = Nothing
End Sub


Bu formül eşleşenleri siliyor. Eşleşmeyenleri silmek için nasıl değişiklik yapılır.
 

muygun

Özel Üye
Katılım
6 Temmuz 2004
Mesajlar
9,181
Excel Vers. ve Dili
Excel-2003 Türkçe
Merhaba;
Veriyi yukarda olduğu gibi ters döngü ile tararsınız.

aranan=Sheets("Sayfa1").Range("a” & i)
varmı=WorksheetFunction.CountIf(Sheets("sayfa2").Range("b1:b65536" ), aranan)
if varmı>=0 then
Sayfa1.Rows(i).Delete

gibi işlem yaparsınız.
veya örnek dosya ekleyerek nokta çözüm bulursunuz.

İyi çalışmalar.
 
Katılım
24 Aralık 2007
Mesajlar
130
Excel Vers. ve Dili
2007 Tr
varmı=WorksheetFunction.CountIf(Sheets("sayfa2").Range("b1:b65536" ), aranan)
Burası kırmızı formül işlemiyor
 
Katılım
24 Aralık 2007
Mesajlar
130
Excel Vers. ve Dili
2007 Tr
X1part veya x1whole yerine eşleşmeyen ifadesi varmı onu yazsak olmuyorum.
 

Ömer

Moderatör
Yönetici
Katılım
18 Ağustos 2007
Mesajlar
22,184
Excel Vers. ve Dili
Microsoft 365 Tr
Ofis 2016 Tr
Merhaba,

Verdiğiniz kodlardaki "not" silerek deneyin.

If Not evn Is Nothing Then

yerine

If evn Is Nothing Then

.
 
Üst