Excel VBA: удалить всю строку, если ячейка в столбце a пуста (длинный набор данных)

Я пытаюсь удалить все строки, которые имеют пустые ячейки в столбце A в длинном наборе данных (более 60 000 строк в excel)

У меня есть код VBA, который отлично работает, когда у меня меньше 32 000 ячеек:

   Sub DelBlankRows()

   Columns("A:A").Select
   Selection.SpecialCells(xlCellTypeBlanks).Select
   Selection.EntireRow.Delete

   End Sub

кто-нибудь знает способ, чтобы он работал на большом количестве строк?

спасибо

1 ответов


вы можете попробовать:

Application.ScreenUpdating = False
Columns("A:A").SpecialCells(xlCellTypeBlanks).EntireRow.Delete
Application.ScreenUpdating = True

Application.ScreenUpdating переключает ли обновления, сделанные в коде, видны пользователю и пытается Columns("A:A").SpecialCells(... может сэкономить время, потому что на самом деле не нужно выбирать непроверенные ячейки.