• DİKKAT

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

Boş Satırları Silme Makrosu

Katılım
18 Eylül 2014
Mesajlar
204
Excel Vers. ve Dili
Excel 2007
Merhaba,

Makro öğrenmeye başladım. Fakat kurguları tam beceremiyorum. :D
1. sütunda değerlerim var. Bu değerler arasında boşluklar var. Ben boş hücrenin tüm satırını silmek istiyorum. Aslında kodlamamdaki tek sıkıntı sonsuza kadar sürmesi :D

i=i-1 uyguluyorum silinen satır olduğunda o satırı tekrar kontrol etmesi için fakat sayfa sonuna kadar silmeye çalışıyor makro hiç bitmiyor. Yani demem o ki satırın sonundaki son boş hücreye geldikten sonra i=i-1 den sonra next komutunun gelmesiyle formül kısır döngüye giriyor ve sonlanmıyor. Çözmek için ne yapabilirim. Yada farklı bir yöntem mi uygulamalıyım.




Sub bossatirtemizle()

'boş satırları temizleme makrosu

For i = 1 To 100
If Cells(i, 1) = "" Then

Rows(i & ":" & i).Select
Selection.Delete Shift:=xlUp
i = i - 1
Else
End If
Next
End Sub
 
Merhaba,

Makro öğrenmeye başladım. Fakat kurguları tam beceremiyorum. :D
1. sütunda değerlerim var. Bu değerler arasında boşluklar var. Ben boş hücrenin tüm satırını silmek istiyorum. Aslında kodlamamdaki tek sıkıntı sonsuza kadar sürmesi :D

i=i-1 uyguluyorum silinen satır olduğunda o satırı tekrar kontrol etmesi için fakat sayfa sonuna kadar silmeye çalışıyor makro hiç bitmiyor. Yani demem o ki satırın sonundaki son boş hücreye geldikten sonra i=i-1 den sonra next komutunun gelmesiyle formül kısır döngüye giriyor ve sonlanmıyor. Çözmek için ne yapabilirim. Yada farklı bir yöntem mi uygulamalıyım.




Sub bossatirtemizle()

'boş satırları temizleme makrosu

For i = 1 To 100
If Cells(i, 1) = "" Then

Rows(i & ":" & i).Select
Selection.Delete Shift:=xlUp
i = i - 1
Else
End If
Next
End Sub

Bu gibi durumlarda kodun kısr döngüye girmemesi için işlemi tersten yaptırmak gerek
yani
100
99
98
97 gibi
Kod

Kod:
Sub bossatirtemizle()
'boş satırları temizleme makrosu
For i = 100 To 1 Step -1
If Cells(i, 1) = "" Then
Rows(i & ":" & i).Delete Shift:=xlUp
End If
Next
End Sub
 
Geri
Üst