lege rijen en VBA (Excel)

Status
Niet open voor verdere reacties.

brandernl

Gebruiker
Lid geworden
19 okt 2004
Berichten
445
Kan iemand uitleggen waarom de volgende macro 3 keer uitgevoerd moet worden voordat alle lege rijen verwijderd zijn?
(Er is soms 1 lege rij tussen twee gevulde, maar ook meer lege rijen tussen twee gevulde.)
Veel dank

Sub LegeRij()
Dim rRange As Range
Dim rCell As Range
' Application.ScreenUpdating = False
Set rRange = Range(Range("A1"), Range("A1000").End(xlUp))
For Each rCell In rRange
If rCell.Value = "" Then rCell.EntireRow.Delete
Next

End Sub
 
Hoi brandernl,

Met jouw code wordt een lege rij gevonden en verwijderd. Wat denk je dat er met de regel onder de lege rij gebeurdt.




Juist deze gaat 1 omhoog.
De for each gaat echter gewoon verder, dus de regel die zojuist 1 omhoog gegaan is wordt overgeslagen.

Met onderstaande code worden alle regels verwijdert waarin een cell in kolom A niets staat


Code:
Sub LegeRij()

Dim LastRow As Long
LastRow = Cells.SpecialCells(xlCellTypeLastCell).Row

' Application.ScreenUpdating = False
''Set rRange = Range(Range("A1"), Range("A1000").End(xlUp))

For X = LastRow To 1 Step -1
If Range("A" & X).Value = "" Then Range("A" & X).EntireRow.Delete
Next

End Sub

Suc6
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan