Цель моего макроса состоит в том, чтобы выполнить следующие шаги: 1: таблица фильтра, смотрящая на столбец D, чтобы получить все значения «0» 2: удалить все строки со значениями «0» 3: удалить фильтр.
Проблема в том, что моя таблица содержит более 75 000 строк данных, поэтому я продолжаю получать предупреждения о том, что у меня слишком много данных.Я попробовал макрос цикла, но это заняло слишком много времени, поэтому я сейчас работаю над макросом, который выполняет описанные выше шаги.Мой код постоянно зависает, чтобы удалить диапазон ячеек, которые я выбрал.(мой диапазон выходит за пределы диапазона таблицы, потому что эта таблица всегда будет иметь переменное количество строк).
Ошибка: «Метод« Range »из oject'_Worksheet 'не выполнен
Я предполагаю, чтоМне нужно указать точное количество строк в моей таблице. Как я могу изменить код, чтобы мне не приходилось изменять диапазон каждый раз, когда я выполняю макрос?
Вот что у меня так далеко:
Sub Delete_Zero_Rows()
Dim ws As Worksheet
Set ws = ThisWorkbook.Worksheets("Status")
ws.Activate
On Error Resume Next
ws.ShowAllData
On Error GoTo 0
ws.Range("B3:F1").AutoFilter Field:=4, Criteria1:="0"
Application.DisplayAlerts = False
ws.Range("B4:F").SpecialCells(xlCellTypeVisible).Delete
Application.DisplayAlerts = True
On Error Resume Next
ws.ShowAllData
On Error GoTo 0
End Sub