Range类的自动筛选方法使用VBA失败



我得到了导致运行时错误1004的这部分代码。我试着查找在堆栈溢出上解决的不同情况,但无法解决这个问题,虽然我想这很简单。

提前感谢您的帮助。

Sub test2()
Dim snws As Worksheet: Set snws = ActiveWorkbook.Sheets("SN crew")
With snws
.AutoFilterMode = False
.Range("A:J").AutoFilter Field:=10, Criteria1:=Cells(1, 18).Value
End With
End Sub

您的问题是代码不在工作表" SN船员"中。试试这个:

'this sub in a module
Public Sub setFilter(ws As Worksheet, criteria As String)
With ws
.AutoFilterMode = False
.Range("A:J").AutoFilter Field:=10, Criteria1:=criteria
End With
End Sub

'this sub in any sheet's module you want to set filter
Private Sub callSetFilter()
Call setFilter(Me, "your criteria here")
End Sub

最新更新