Для каждого листа в моей книге (около 30 вкладок) я пытаюсь удалить все строки, имеющие строковое значение «NA» в Column F
.
' Setting Display Alerts OFF
Application.DisplayAlerts = False
' Declare ws as a worksheet object variable.
Dim ws As Worksheet
Dim rng As Range
' Initiate Loop
For Each ws In ThisWorkbook.Sheets
Set rng = ws.Range("A16:F" & Cells(Rows.count, "F").End(xlUp).Row)
With rng
.AutoFilter
.AutoFilter field:=6, Criteria1:="NA"
'Make sure it aligns with the lettered column defined above
rng.Resize(rng.Rows.count - 1).Offset(1).SpecialCells(xlCellTypeVisible).Delete
.AutoFilter
End With
Next ws
' Toggling Display Alerts ON
Application.DisplayAlerts = True
Однако это только кажется работать на самом первом листе. На всех остальных последующих листах соответствующие строки не удаляются. Кроме того, макрос выполняется без ошибок.
Я считаю, что мой l oop, применяющий этот процесс удаления, не применяется к другим листам. Что мне здесь не хватает?
Заранее спасибо.