高级自动筛选以排除某些值

Pet*_*rke 3 excel vba filter

我想在 Excel 的工作表中过滤大量名称。在另一张工作表中,我包含了一个名称列表,我想过滤掉这些名称并从更大的列表中排除这些名称。我将如何使用高级过滤器来做到这一点?我在下面尝试过这个,但它似乎不起作用。我的大名单在K2:K5000,我的标准也在H2:H3(标准会增加,但我保持小名单进行测试)。任何帮助将不胜感激!

Sub Filter()
    Sheet5.Range("K2:K5000").AdvancedFilter Action:=xlFilterInPlace, _
        CriteriaRange:=Sheets("Sheet3").Range("H2:H3"), Unique:=False
End Sub
Run Code Online (Sandbox Code Playgroud)

Bra*_*cku 5

排除的值H2:H3K2:K5000采用先进的过滤器,你可以使用以下方法:

  • 确保单元格K1不为空(输入任何标题)
  • 找到 2 个未使用的单元格(例如I1:I2
  • 离开I1空白
  • 在中输入以下公式 I2

     =ISNA(MATCH(K2,$H$2:$H$3,0))
    
    Run Code Online (Sandbox Code Playgroud)
  • 使用以下代码排除行

     Sheet5.Range("K1:K5000").AdvancedFilter Action:=xlFilterInPlace, _
         CriteriaRange:= Sheets("Sheet3").Range ("I1:I2"), Unique:=False 
    
    Run Code Online (Sandbox Code Playgroud)