按搜索条件删除 Excel 行

Removing Excel rows by search criteria

我正在尝试通过 VBA 删除第 13 列单元格中数字小于整数 5 的 Excel 行。该代码只是按搜索条件过滤行,然后删除不需要的行。

'1. Apply Filter
  ws.Range("A5:O202").AutoFilter Field:=13, Criteria1:="<5"
  
  '2. Delete Rows
  Application.DisplayAlerts = False
    ws.Range("A5:O202").SpecialCells(xlCellTypeVisible).Delete
  Application.DisplayAlerts = True
  
  '3. Clear Filter
  On Error Resume Next
    ws.ShowAllData
  On Error GoTo 0

为了让它继续下去,我的代码指定了一个静态范围以容纳最多 202 行的不同 table 长度,但是我可以更改它以便范围在它发现的第一个空单元格之前将自身设置为一个在第 13 列?

Sub t()
Dim t As Long
Dim ws As Worksheet
    Set ws = ActiveSheet
    t = 1
    Do Until IsEmpty(ws.Cells(t, 13))
        If ws.Cells(t, 13) < 5 Then
            ws.Rows(t).Delete
        Else
            t = t + 1
        End If
    Loop
End Sub