我有一系列数据,我想按特定条件过滤,然后将过滤后的数据复制到另一张纸上。
这是我的代码:
'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)? 请注意,我的过滤范围不是表格。
谢谢!
答案 0 :(得分:0)
您已经在变量中设置了lastrow。试试
with worksheets("sheet1").Range("A1:AW" & Lastrow)
.AutoFilter field:=1, Criteria1:=filter
.Copy Destination:=Sheet2.Range("A1")
end with