[英]Excel Filtering and Copying in VBA
我正在處理一個 VBA 腳本,該腳本從 Access 中提取一系列日期,然后過濾數據並根據過濾后的數據創建圖表。 過濾后的數據將轉到單獨的工作表,圖表將從中提取其數據。 我可以使用 SQL 語句從 Access 中獲取數據,但是我在 Excel 中的自動AutoFilter
出錯了。 這是我所擁有的...
Sheet3.Range("F4:F500").AutoFilter(, "Riveter 01").Copy Destination:=Sheet2.Range("A5")
它給出了應用程序定義或對象定義的錯誤,我不知道為什么。 這是正確的方法還是有更簡單的方法?
PS:這個過濾器將在 22 台不同的機器上發生,所以我計划為每台機器運行一個循環。 如果這不是最快或正確的方法,請告訴我。
你需要把它分成兩部分。 過濾然后復制/粘貼。 見下文:
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
刪除過濾器:
On Error Resume Next
Sheet3.ShowAllData
On Error GoTo 0
On Error Resume Next 適用於沒有過濾器可以跳過錯誤的情況。 請注意 Sheet3 和 Sheet2 對於那些尋找通用解決方案的人的使用。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.