尝试使用范围作为input从对话框应用高级filter?

在高级filter代码行中出现错误。 对象不支持这个属性或方法。

Dim rng As Range Set rng = Application.InputBox(Prompt:="Select range or enter A1 notation:", Type:=8) Workbooks(filename).Sheets("Sheet1").rng.AdvancedFilter Action:=xlFilterCopy, CriteriaRange:=Range( _ "A1:A2"), CopyToRange:=Range("A3"), Unique:=False 

您不需要定义工作簿和工作表,因为在设置范围时已经将其定义为范围。 更改代码:

 Rng.AdvancedFilter Action:=xlFilterCopy, CriteriaRange:=Range( _ "A1:A2"), CopyToRange:=Range("A3"), Unique:=False