簡體   English   中英

VBA-復制過濾范圍而不選擇

[英]VBA - copy filtered range without select

我有一系列數據,我想按特定條件過濾,然后將過濾后的數據復制到另一張紙上。

這是我的代碼:

           'filter and Lastrow are variables previously declared    
            Sheet1.Activate
            Sheet1.Range("$A$1:$AW$" & Lastrow).AutoFilter field:=1, Criteria1:=filter
            Sheet1.Range("A1").Select

            Range(Selection, Selection.End(xlDown)).Select
            Range(Selection, Selection.End(xlToRight)).Select
            Selection.Copy Destination:=Sheet2.Range("A1")

問題在於,這需要選擇,並且選擇需要相關的工作表處於活動狀態。 有沒有一種方法,而無需先選擇(Sheet1.Range(“ A1”)。select)? 請注意,我的過濾范圍不是表格。

謝謝!

您已經在變量中設置了lastrow。 嘗試,

with worksheets("sheet1").Range("A1:AW" & Lastrow)
    .AutoFilter field:=1, Criteria1:=filter
    .Copy Destination:=Sheet2.Range("A1")
end with

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM