• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

A1 boşsa A satırını sil

Katılım
26 Ocak 2006
Mesajlar
757
Excel Vers. ve Dili
Office 365 İngilizce 64 Bit
ekteki dosyamda 800 satırlık bir data var. Eğer A kolonunda bir değer yoksa o satırı makro ile tamamen sildirmek istiyorum. Aşağıdaki kodları denedim ama olmadı hata nerde acaba...

Deneme 1

Sub sil()
For i = 1 To 865
If Cells(i, "A") = 0 Then Rows(i).Select
Selection.Delete Shift:=xlUp
Next
End Sub

Deneme 2

Sub sil()
For i = 1 To 865
If Cells(i, "A") = 0 Then Rows(i).Delete
Next
End Sub

Her ikiside bazı satırları sildi bazılarını silmedi.
Hata nerde yapıyorum...

Tşk
 

Ekli dosyalar

0 yerine "" kullanın.:cool:
 
Ama sizin yolladığınız dosyada A sütununda hiç veri yokki.
Nasıl oluyor bu iş.:cool:
 
Pardon varmış şimdi deneyicem.:cool:
 
Selamlar,

Silme kodlarında püf nokta döngüyü tersten çalıştırmaktır. Kodlarınızı aşağıdaki gibi değiştirerek sorunu çözebilirsiniz.

Kod:
Sub Sil()
[COLOR=red]For i = 865 To 1 Step -1[/COLOR]
If Cells(i, "A") = "" Then Rows(i).Select
Selection.Delete Shift:=xlUp
Next
End Sub
 
ekteki dosyamda 800 satırlık bir data var. Eğer A kolonunda bir değer yoksa o satırı makro ile tamamen sildirmek istiyorum. Aşağıdaki kodları denedim ama olmadı hata nerde acaba...

Deneme 1

Sub sil()
For i = 1 To 865
If Cells(i, "A") = 0 Then Rows(i).Select
Selection.Delete Shift:=xlUp
Next
End Sub

Deneme 2

Sub sil()
For i = 1 To 865
If Cells(i, "A") = 0 Then Rows(i).Delete
Next
End Sub

Her ikiside bazı satırları sildi bazılarını silmedi.
Hata nerde yapıyorum...

Tşk

Şöyle denermisiniz...
For i = 865 To 1 Step -1
If cells(i,"A")="" Then Rows(i).Delete
Next
End Sub
 
Kod aşağıdadadır.:cool:
Kod:
Sub bosayi_sil()
Dim i As Integer
For i = 865 To 1 Step -1
    If Cells(i, "A").Value = "" Then Rows(i).Delete
Next
MsgBox "Silme işlemi sona erdi"
End Sub
 
Ancak kodlar neden aşağıdan yukarı doğru silme işlemini doğru yaparken neden yukarıdan aşağıya doğru silmiyor. Hata nerde anlamadım ?
 
Merhaba,
İlk satır silindiğinde, i değişkeninin değeri 2 oluyor. Halbu ki ilk satır silinmiş ve sayfa 1 satır yukarı kaymış olduğundan artık 1. satırın silinmesi söz konusu değil. Çünkü i satırını yani 2. satırı kontrol ediyor ve bu 865 e kadar böyle (birer atlayarak) devam ediyor.
Saygılar.
 
çok haklısın. Bak bunu hiç düşünmemiştim. Süper. Çok teşekkürler.
 
Sayın dEde sade bir şekilde izah etmiş :)
Tşkler...
 
Geri
Üst