VBA:使用通配符按多个条件(超过2个)进行过滤

时间:2016-01-31 16:15:15

标签: regex excel vba excel-vba

我希望在VBA中使用通配符(“包含”)创建过滤规则,而不管文本的位置如何。

例如,我想过滤包含字符串mwvwestrockmeadwjacob等的所有内容。

我尝试了几种方法却没有成功。 第一:

    ActiveSheet.Range("A1").CurrentRegion.AutoFilter Field:=6, Criteria1:=Array( _
    "*Meadw*", "*WestRock*", "*mvw*", "*Jacob*"), Operator:=xlFilterValues

并且

ActiveSheet.Range("A1").CurrentRegion.AutoFilter Field:=6, _
Criteria1:="=*westrock*", Operator:=xlOr, Criteria2:="=*mwv*", Operator:=xlOr, Criteria3:="=*meadw*"

对于后者,我限于2个标准。前者似乎根本不起作用。

我想一个解决方法是在一张单独的工作表上复制我的数据,在每张工作表上一次过滤2个,并在完成所有操作后合并它们,但这似乎不太有效。

是否有更有效的方式来实现这一目标?帕斯卡程序员认为Regex在这种情况下可能有用,但不幸的是我没有使用它的经验。

0 个答案:

没有答案