VBA: Как удалить отфильтрованные строки в Excel?

У меня есть таблица Excel, которая содержит некоторые данные. Используя следующий код VBA, япытаюсь отфильтровать только пустые ячейки в некоторых полях и удалить эти строки

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

Это работает, только если у меня есть пустые ячейки в этих столбцах. Но я столкнулся с проблемой, когда у меня нет пустых ячеек, и с помощью приведенного выше кода весь мой диапазон удаляется с листа. Как избежать этой проблемы? Должен ли я изменить свое состояние фильтра или что-то еще?

Ответы на вопрос(2)

Ваш ответ на вопрос