For…Next Ters Döngüler

Döngü sırasında satır silinmesi gibi durumlarda alttaki satırlar yukarı kayacağı için döngüye tersten başlanması daha uygun olur.

Sub Gizli_Satirlari_Silme()

Dim r As Long
Const ilkSatir As Byte = 4 'datanın ilk satırı (başlık hariç)
Dim SonSatir As Long

'CurrentRegion ve ilkSatir'da başlık 2 defa dahil olduğu için 2 çıkarıyoruz
SonSatir = Range("A" & ilkSatir).CurrentRegion.Rows.Count + ilkSatir - 2
For r = SonSatir To ilkSatir Step -1
    If Rows(r).Hidden = True Then
        'Range("P" & r).Value = "X"
        Rows(r).Delete
    End If
Next r

End Sub

Yayımlandı

kategorisi

yazarı:

Etiketler: