VBA: Wie lösche ich gefilterte Zeilen in Excel?

Ich habe eine Excel-Tabelle, die einige Daten enthält. Mit dem nächsten VBA-Code versuche ich, nur leere Zellen in einigen Feldern zu filtern und diese Zeilen zu löschen

ActiveSheet.Range("$A$1:$I$" & lines).AutoFilter Field:=7, Criteria1:= _
        "="
ActiveSheet.Range("$A$1:$I$" & lines).AutoFilter Field:=8, Criteria1:= _
        "="
ActiveSheet.Range("$A$1:$I$" & lines).AutoFilter Field:=9, Criteria1:= _
        "="
ActiveSheet.UsedRange.Offset(1, 0).Resize(ActiveSheet.UsedRange.rows.Count - 1).rows.Delete
ActiveSheet.ShowAllData

Es funktioniert nur, wenn ich leere Zellen in diesen Spalten habe. Aber ich hatte ein Problem, wenn ich keine leeren Zellen habe und durch die Verwendung des obigen Codes meinen gesamten Bereich vom Blatt entferne. Wie vermeide ich dieses Problem? Soll ich den Filterzustand ändern oder etwas anderes?

Antworten auf die Frage(2)

Ihre Antwort auf die Frage