I have the following loop:
for each cell in selection ' n-by-m area
if 'condition based on cell.value' then
cell.entireRow.delete
else
' process cell
end if
next
As written, if the range is A1:B10 and A2 meets the
condition, the loop continues by processing (the new) B2
after deleting row 2 -- which means that the new A2 is
never processed.
Is there an easy way to continue the loop by processing
(the new) A2 after deleting row 2?
I work around the problem by adding "goto again" after
the entireRow.delete operation, where "again" is above
the for-each statement. That is, I restart the for-loop.
That is okay for now because with my data, I only delete
one row near the top of the selection. Thus, I lose little
efficiency. But I would like to know the "right" way to do
this, for the future.
(I tried putting "again" at the top of loop just after the
for-each statement, but I got a debug error because
"cell" is apparently undefined after the deletion.)
Bookmarks