View Single Post
  #2   Report Post  
Posted to microsoft.public.excel.programming
Tom Ogilvy Tom Ogilvy is offline
external usenet poster
 
Posts: 27,285
Default Deleting blank rows

Dim c As Range
Dim myString As String
Dim i as Long

For i = 10 to 1 step -1
set c = Cells(i,1)
myString = c & c.Offset(0, 1) & c.Offset(0, 2)
If Len(myString) = 0 Then
c.EntireRow.Delete
End If
Next c

--
Regards,
Tom Ogilvy

"Michael Chang" wrote in message
...
Hi,

I am writing a macro to delete the entire row if all the cells are blank.
For example, in a range which 10 rows by 3 columns. Data in the first

column
is 2 rows deep, 2nd column - 1 row, 3rd column - 3 rows. I want the macro
to delete rows 4 through to 10.

This is what I tried:

Dim c As Range
Dim myString As String

For Each c In Range("A1:A10").Cells
myString = c & c.Offset(0, 1) & c.Offset(0, 2)
If Len(myString) = 0 Then
c.EntireRow.Delete
End If
Next c

What happens is that only half the blank rows are deleted. It seems as
though after the first row is deleted 'Next c' skips a row. What am I

doing
wrong?

Regards,
Michael