У меня есть этот код, который позволяет мне искать строку и, если она есть, то фильтровать по этой строке, но если ее там нет, ничего не делать.
Dim Findvalue As String
Dim Rng As Range
Findvalue = "1"
With ws.Range("K:K")
Set Rng = .Find(What:=Findvalue, _
After:=.Cells(.Cells.Count), _
LookIn:=xlValues, _
LookAt:=xlWhole, _
SearchOrder:=xlByRows, _
SearchDirection:=xlNext, _
MatchCase:=False)
If Not Rng Is Nothing Then
ws.Range("K4").AutoFilter _
Field:=11, _
Criteria1:="1"
Else
Exit Sub
End If
End With
Это работает, если значение это буква, но не работает, когда это число.