Microsoft Excel运行时错误'1004'

时间:2011-05-13 20:47:39

标签: excel vba

  

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

代码如下......

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

1 个答案:

答案 0 :(得分:1)

CriteriaRangeCopyToRange标题需要与Table_HESCO标题相匹配

例如

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上带有字段名称的标准,将其放入带有B18:D18字段名称的SalesData中

Sheets("SalesData").Range("Table_HESCO")

Sheets("ProductList").Range("C2:C3")

Sheets("SalesData").Range("B18:D18")