Excel VBA自动筛选器错误

时间:2017-10-13 13:38:55

标签: excel vba excel-vba

我正在努力让我的工作更轻松。我有一个带有pivottable的工作表,它从ms sql数据库中获取数据(超过100000条记录,如果这很重要)。我需要自动过滤这些数据。所以我谷歌吧。

我找到了这个vba代码:

Private Sub Worksheet_Calculate()

Range("A11").CurrentRegion.AutoFilter field:=6, Criteria1:=Range("d5").Value

End Sub

我的结论是我可以将它应用到我的案例中。

我需要过滤的范围从A11开始,过滤器应该按照单元格D5中的值应用于第6号字段。

首先它会进行过滤,但后来我收到了这个错误:

对象'Range'的方法'自动过滤'失败

我不知道出了什么问题,excel卡住了,没有任何作用

也许有人可以给我一些暗示。

谢谢。

1 个答案:

答案 0 :(得分:0)

我建议为自动过滤器尝试一个完全定义的范围,例如:

Sub fdsa()
    Dim LR as Long 'LR is last row
    LR = Cells( Rows.Count, "D").End(xlUp).Row 'Chose Col D to sort as it's the filter range
    Range("A11:O" & LR).AutoFilter field:=6, Criteria1:=Range("D5").Value 'Arbitrarily chose O as the stop column in the range... adjust as necessary
End Sub