高级过滤器Excel VBA
我已经为我的高级过滤器创建了一个动态列表范围。我创建了一个名为“数据”的名称。当我尝试将名称输入VBA公式时,我收到一个错误。动态名称是否适用于条件和输出范围高级过滤器Excel VBA,excel,advanced-filter,vba,Excel,Advanced Filter,Vba,我已经为我的高级过滤器创建了一个动态列表范围。我创建了一个名为“数据”的名称。当我尝试将名称输入VBA公式时,我收到一个错误。动态名称是否适用于条件和输出范围 Range("Sheet2!Data").AdvancedFilter Action:=xlFilterCopy, CriteriaRange:=Range _ ("Sheet2!Filter"), CopyToRange:=Range("Sheet2!Location"), Unique:=False 我收到以下运行时
Range("Sheet2!Data").AdvancedFilter Action:=xlFilterCopy, CriteriaRange:=Range _
("Sheet2!Filter"), CopyToRange:=Range("Sheet2!Location"), Unique:=False
我收到以下运行时错误“1004”:
对象“U全局”的方法“范围”失败
如果指定范围的范围仅适用于
Sheet2
,则需要使用工作表(“Sheet2”)
完全限定范围,如下代码所示:
With Worksheets("Sheet2")
.Range("Data").AdvancedFilter Action:=xlFilterCopy, CriteriaRange:=.Range("Filter"), _
CopyToRange:=.Range("Location"), Unique:=False
End With
如果指定范围的范围是工作簿
,则使用以下代码(无需使用工作表
限定范围
):
如果指定范围的范围仅适用于Sheet2
,则需要使用工作表(“Sheet2”)
完全限定范围,如下代码所示:
With Worksheets("Sheet2")
.Range("Data").AdvancedFilter Action:=xlFilterCopy, CriteriaRange:=.Range("Filter"), _
CopyToRange:=.Range("Location"), Unique:=False
End With
如果指定范围的范围是工作簿
,则使用以下代码(无需使用工作表
限定范围
):
或Sheets(“Sheet2”).Range(“数据”).advancedFilterAction:=xlFilterCopy,CriteriaRange:=.Range(“过滤器”),CopyToRange:=.Range(“位置”),Unique:=False
无论出于何种原因,它都无法识别名称。我为所有3个名称创建了一个偏移公式;数据、筛选器和位置。但当我使用数据时,代码崩溃了。我使用的范围是A11:N1000,但我可能会添加列和行,所以希望使其成为动态的。是否可能有最后一行或最后一列的范围?或工作表(“Sheet2”).range(“数据”)。高级筛选操作:=xlFilterCopy,CriteriaRange:=.range(“筛选”),CopyToRange:=.range(“位置”),Unique:=False
,无论出于何种原因,它都无法识别名称。我为所有3个名称创建了一个偏移公式;数据、筛选器和位置。但当我使用数据时,代码崩溃了。我使用的范围是A11:N1000,但我可能会添加列和行,所以希望使其成为动态的。是否可能有最后一行或最后一列的范围?