Hi,
Wherever possible you should try and avoid looping through cells, particularly with large ranges since there is a time overhead each time the VBE jumps back to the Excel Application (and vice versa) to perform a task, as it does each tine it deletes a row. It's always much better to use standard excel functionality and use that.
So in this case make the first part of the macro a task to create an Excel function that identifies which rows should be deleted and copy that down a helper column adjacent to your data. For instance
Now filter your range using this helper column and select on "Delete", then finally delete all the filtered rows. You can use VBA code like:
HTH
Bookmarks