阵列中的VBA多个条件不起作用

时间:2014-10-20 15:29:07

标签: excel vba

我写了以下代码;但是,它没有显示任何结果,如果我做了两个标准,但不会超过它。

Set FindRange = Range(Cells((ActiveCell.Row + 1), ActiveCell.Column), _
 Cells(LastRow,    ActiveCell.Column))
ActiveCell.AutoFilter , Field:=ActiveCell.Column, Criteria1:=Array("*Consumer*",_
 "*IENC*","*Non ICG*", "*Not past*", _"*Not a past*"), Operator:=xlFilterValues

2 个答案:

答案 0 :(得分:0)

Excel不支持两个以上的条件。通常,您无法通过界面从VBA做任何事情。使用Excel UI,您还可以只输入两个条件。

答案 1 :(得分:0)

这可以在没有AutoFilter的情况下完成:

Dim r As Range
For Each r In FindRange
    v = r.Value
    If InStr(v, "Consumer") > 1 Or _
        InStr(v, "IENCE") > 0 Or _
        InStr(v, "Non ICG") > 0 Or _
        InStr(v, "Not past") > 0 Or _
        InStr(v, "Not a past") > 0 Then
        r.EntireRow.Hidden = False
    Else
        r.EntireRow.Hidden = True
    End If
Next r