【发布时间】:2018-04-04 00:39:38
【问题描述】:
我有两张床单。 Sheet1 (PasteHere) 在 col B 中有很长的值列表。例如:
100000
100100
100800
100801
200501
etc
Sheet2 (Landing) 有一个我需要过滤的列表。例如:
100000
100801
最终结果是我希望工作表 1 中的值被工作表 2 中的值过滤。我想我可以命名工作表 2 中的范围,然后按它过滤,但它不起作用。这是我到目前为止的代码。我将范围命名为“CustList”
Sub FilterList()
Sheets("Landing").Select
Dim LastRow1 As Long
LastRow1 = Range("B" & Rows.Count).End(xlUp).Row
Range("B15:B" & LastRow1).Select
ActiveWorkbook.Names.Add Name:="CustList", RefersToR1C1:= _
"=Landing!R15C2:R[" & LastRow1 & "]C2"
Range("E16").Select
Dim vCrit As Variant
Dim rngCrit As Range
Set rngOrders = Sheets("PasteHere").Range("$A$1").CurrentRegion
Set rngCrit = Sheets("Landing").Range("CustList")
vCrit = rngCrit.Value
Sheets("PasteHere").Select
rngOrders.AutoFilter _
Field:=2, _
Criteria1:=Application.Transpose(vCrit), _
Operator:=xlFilterValues
End Sub
【问题讨论】: