Я пытаюсь создать код, который мог бы фильтровать и удалять около 35 000 строк.Filter & Delete Entire Row
Я использовал приведенные ниже коды, но это занимает много времени (более 10 минут), может ли кто-нибудь помочь мне сделать это быстрее?
Код 1:
Range("$A$1:$S$50000").AutoFilter Field:=19, Criteria1:="Delete"
ActiveSheet.AutoFilter.Range.Offset(1, 0).Rows.SpecialCells(xlCellTypeVisible).Delete (xlShiftUp)
Код 2:
Dim RngToDelete As Range
Range("$A$1:$S$50000").AutoFilter Field:=19, Criteria1:="Delete"
Set RngToDelete = Selection.SpecialCells(xlCellTypeVisible)
RngToDelete.Delete
Спасибо, Amith
Возможный дубликат [Excel VBA Performance - 1 миллион строк - удаление строк, содержащих значение, менее чем за 1 минуту] (http://stackoverflow.com/questions/30959315/excel-vba-performance-1-million- rows-delete-rows-contains-a-value-in-less) –
Вы уже «application.screenupdating = FALSE»? Это сэкономит массу времени. –
Да, я использовал - application.screenupdating = FALSE –