Gra*_*ant 5 excel vba filter excel-2003 excel-vba
我正在开发一个VBA脚本,它从Access中提取一系列日期,然后过滤数据并根据过滤后的数据创建图表.过滤后的数据将进入单独的工作表,图表将从中提取数据.我可以使用SQL语句从Access中获取数据,但Excel中的AutoFilter错误输出.这是我的......
Sheet3.Range("F4:F500").AutoFilter(, "Riveter 01").Copy Destination:=Sheet2.Range("A5")
Run Code Online (Sandbox Code Playgroud)
它给出了应用程序定义或对象定义的错误,我无法弄清楚原因.这是正确的方式还是有更简单的方法?
谢谢!
PS:这个过滤器将在22台独特的机器上运行,因此我计划为每台机器运行一个循环.如果这不是最快或最正确的方式,请告诉我.
InC*_*ext 13
您需要将其拆分为两部分.过滤然后复制/粘贴.见下文:
With Sheet3
.AutoFilterMode = False
With .Range("F4:F500")
.AutoFilter Field:=1, Criteria1:="Riveter 01"
.SpecialCells(xlCellTypeVisible).Copy Destination:=Sheet2.Range("A5")
End With
End With
Run Code Online (Sandbox Code Playgroud)
删除过滤器:
On Error Resume Next
Sheet3.ShowAllData
On Error GoTo 0
Run Code Online (Sandbox Code Playgroud)
On Error Resume Next用于当没有过滤器时跳过错误.请注意Sheet3和Sheet2用于寻找通用解决方案的用户.