Excel 范围类的自动筛选方法失败

Excel 范围类的自动筛选方法失败,excel,vba,Excel,Vba,我正在尝试编写一些代码来过滤和粘贴表中的数据。问题是我在这一行上不断出现“range类的自动筛选方法失败,条件为”错误: wsS1.Cells.AutoFilter Field:=5, Criteria1:=tempCriteria 有人能指出问题所在吗 谢谢 Sub FilterBats() Dim wsS1 As Worksheet Dim wsS2 As Worksheet Dim wsS3 As Worksheet Dim lastrow As Lon

我正在尝试编写一些代码来过滤和粘贴表中的数据。问题是我在这一行上不断出现“range类的自动筛选方法失败,条件为”错误:

 wsS1.Cells.AutoFilter Field:=5, Criteria1:=tempCriteria
有人能指出问题所在吗

谢谢

Sub FilterBats()
    Dim wsS1 As Worksheet
    Dim wsS2 As Worksheet
    Dim wsS3 As Worksheet
    Dim lastrow As Long
    Dim lastrow2 As Long
    Dim tempCriteria As String


    Set wsS1 = Sheets("BallByBallBatting")
    Set wsS2 = Sheets("Summary")
    Set wsS3 = Sheets("FilteredBats")


    Application.ScreenUpdating = False

    lastrow2 = wsS3.Range("A" & Rows.Count).End(xlUp).Row
    wsS3.Range("A1:N" & lastrow2).Delete

    tempCriteria = wsS2.Range("F3").Value

    wsS1.Cells.AutoFilter Field:=5, Criteria1:=tempCriteria


        lastrow = wsS1.Range("A" & Rows.Count).End(xlUp).Row

'
        wsS1.Range("A1:N" & lastrow).Copy wsS3.Range("A1")
        wsS1.AutoFilter.ShowAllData

        ActiveWorkbook.Sheets("Summary").Activate

        Application.ScreenUpdating = True

End Sub

尝试分配一个范围,而不是使用所有的工作表单元格,而不是
wsS1.Cells.AutoFilter

类似这样:
wsS1.Cells(1,1).AutoFilter
应该可以工作


如果列标题位于第一行,它肯定会起作用。

此范围的值是什么:
wsS2.range(“F3”).value
包含哪些值?您好,这是一个数字您能告诉我们什么数字吗?在困扰您的行之前使用
Debug.Print tempCriteria
。由于您将其分配给了
字符串
类型变量,因此实际上它不是一个数字。顺便说一句,您不应该使用
单元格
。定义适当的
范围
对象<代码>单元格使用的是
UsedRange
,在您的情况下,它可能会把东西扔掉。您好,JvdV,谢谢。打印显示的是f3中的8180,而不是wsS1.Cells.AutoFilter尝试分配一个范围,而不是所有单元格。。。类似于:
wsS1.Cells(1,1).AutoFilter
。在哪一行有列标题?