为什么我一直收到错误1004工作表范围失败?

时间:2015-04-28 15:33:11

标签: excel vba excel-vba

尝试使用Sheet1中的数据和条件自动刷新Sheet2中的高级过滤器。看起来很直接,但无论我尝试什么,以下代码都会导致范围对象出现1004错误。我错过了什么?

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    Range("Sheet1!A1:C4").AdvancedFilter Action:=xIFilterCopy, _
        CriteriaRange:=Range("Sheet1!E1:E2"), _
        CopyToRange:=Range("Sheet2!A1:B4"), _
        Unique:=False
End Sub

感谢。

1 个答案:

答案 0 :(得分:1)

在工作表模块中调用时,Me.调用前面有一个隐式Range。所以它只在sheet2中查找名为“Sheet1!E1:E2”的范围。它可以在一个独立模块中工作(所以你可以创建一个过程调用),或者如果你在评论中使用@Joshua Ross建议。