2011-05-13 159 views
2

提取範圍已丟失或 非法字段名稱。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 

回答

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'並放入到SalesData中,其字段名稱在B18:D18中基於c在C2

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

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

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

上產品列表riteria與字段名稱(S)