Microsoft Excel运行时错误“1004”

提取范围有缺失或非法的字段名称。

代码如下…

Private Sub Worksheet_Change(ByVal Target As Range) If Target.Row = 2 And Target.Column = 2 Then 'calculate criteria cell in case calculation mode is manual Worksheets("ProductList").Range("C3").Calculate Worksheets("SalesData").Range("Table_HESCO") _ .AdvancedFilter Action:=xlFilterCopy, _ CriteriaRange:=Sheets("ProductList").Range("C2:C3"), _ CopyToRange:=Range("B18:V18"), Unique:=False End If End Sub 

CriteriaRangeCopyToRange标题需要与CopyToRange标题匹配

例如

 Sub test1() Sheets("SalesData").Range("Table_HESCO").AdvancedFilter Action:=xlFilterCopy, CriteriaRange:= _ Sheets("ProductList").Range("C2:C3"), CopyToRange:=Sheets("SalesData").Range("B18:D18"), Unique:=False End Sub 

从已命名的范围“Table_HESCO”中获取已过滤的数据,并根据ProductList中的条件以及C2中的字段名称将其放入到B18:D18中具有字段名称的SalesData中

表( “SALESDATA”),范围( “Table_HESCO”)

表( “产品列表”)范围( “C2:C3”)。

表( “SALESDATA”)的范围。( “B18:D18”)