Benzer satırların silinmesi.

Katılım
26 Mart 2008
Mesajlar
31
Excel Vers. ve Dili
Excel 2010
Ekteki dosyada
Sayfa2 de 5 sütunluk bir veriler var. ilk sütunda tarihler var.

Ben Sayfa1 de A2 hücresine bir tarih girmek istiyorum. Ve Sayfa2 deki verilerde tarihlerin olduğu sütünda arama yapmasını istiyorum. Eğer bu tarihlerle sayfa1 deki A2 hücresine girdiğim tarihle aynıysa o satırların silinmesini istiyorum.


Sayfa2 deki tarihlerin sayıları değişken olduğu için yapamadın her tarihten aynı sayıdan olsaydı ben bunu kendimde yapardım ama böyle olunca yapamadım...

Arama yaptım bazı değerler buldum ama orada silme yapıyor ama en sonunda bir tane bıraktırır şekilde makrolar yazılmış.

Örnek dosya ekte. Yardım edeceklere şimdiden çok teşekkür ederim.
 
Katılım
26 Mart 2008
Mesajlar
31
Excel Vers. ve Dili
Excel 2010
Arkadaşlar aşağıdaki kodla işi halletlim teşekkürler.

Sub Makro1()
kaca_kadar = 100
For i = 2 To kaca_kadar
For j = 5 To kaca_kadar
If j > i Then
Else
If Range("A2") = Range("A" & j) Then Rows(j).Delete
End If
Next j
Next i
End Sub
 

Orion1

Uzman
Uzman
Katılım
1 Mart 2005
Mesajlar
22,254
Excel Vers. ve Dili
Win7 Home Basic TR 64 Bit

Ofis-2010-TR 32 Bit
bülent123456bülent;268506' Alıntı:
Arkadaşlar aşağıdaki kodla işi halletlim teşekkürler.

Sub Makro1()
kaca_kadar = 100
For i = 2 To kaca_kadar
For j = 5 To kaca_kadar
If j > i Then
Else
If Range("A2") = Range("A" & j) Then Rows(j).Delete
End If
Next j
Next i
End Sub
Tebrikler.:cool:
Ancak tüm satır siliniyor.
Veri kaybı yaşabilirsiniz.:cool:
 

Necdet

Moderatör
Yönetici
Katılım
4 Haziran 2005
Mesajlar
15,247
Excel Vers. ve Dili
Ofis 365 Türkçe
Merhaba,

Veriler fazla olduğu zaman döngü baştan sona kadar çalışır, bu durumda zaman kaybına neden olur.

Kod:
Public Sub AraBulSil()
Set s1 = Sheets("Sayfa1")
Set s2 = Sheets("Sayfa2")
Application.ScreenUpdating = False
Do
    Set Bul = s2.Columns(1).Find(s1.[A2])
    If Not Bul Is Nothing Then s2.Rows(Bul.Row).Delete
Loop Until Bul Is Nothing
Application.ScreenUpdating = True
MsgBox "Aynı Tarihli Satırlar Silinmiştir"
End Sub
 
Üst