Excel和macros – 使用数据validation进行自动筛选

我是使用数据validation自动筛选,下面的代码工作,如果我有在同一电子表格中的数据。 但是,我有不同的工作表中的数据,我希望他们根据我创build的数据validation列表上的select进行筛选。 有一些帮助,请让我知道如何解决这个问题。 提前致谢!

Private Sub Worksheet_Change(ByVal Target As Range) Dim r As Range If Target.Address = "$C$2" Then Set r = Me.AutoFilter.Range If Len(Trim(Target.Value)) > 0 Then r.AutoFilter Field:=1, Criteria1:=Range("C2").Value Else r.AutoFilter Field:=1 End If End If End Sub 

您只需要特别参考您想要自动筛选的工作表。 看到我下面的重构,具体来说, Set r = ...线。

 Private Sub Worksheet_Change(ByVal Target As Range) Dim r As Range If Target.Address = "$C$2" Then Set r = Worksheets("Sheet2").AutoFilter.Range If Len(Trim(Target.Value)) > 0 Then r.AutoFilter Field:=1, Criteria1:=Target.Value Else r.AutoFilter Field:=1 End If End If End Sub