Ciao
il tuo problema (e di molti altri) è usare le "celle unite"! Purtroppo, spesso, VBA non le gradisce.
Sostituisci il DO UNTIL ... LOOP col codice seguente
Do Until ActiveCell.Row = 1
If ActiveCell.Count = 1 Then '<=== riga aggiunta
If Cells(ActiveCell.Row, 5).Value = 0 Then '<==riga modificata
ActiveCell.EntireRow.Delete
End If
End If '<=== riga aggiunta
ActiveCell.Offset(-1, 0).Select
Loop
In altre parole ho detto a Excel di "guardare" il valore della colonna E (la 5)
Prova e fai sapere. Ciao,
Mario