具有多个通配符的自动filter
有没有办法使用Excel自动filter,从而设置一个预定义的值列表进行过滤,它将返回包含该短语的列中的所有单元格? 例如,想象下面的数据(全部在一个列中)。
A 1 NAMES 2 Brian 3 Brian, John 4 Brian, Mark 5 Mark, John
当您select一个或多个选项时,filter将有三个预定义的值, Brian
, John
和Mark
,它满足所有选定的filter? 所以在这个例子中, Brian
会返回前三个单元格,selectMark
和John
只会返回最后一个单元格。
我知道这是可能做一次在使用Advanced Filter
的数据列表,但我正在寻找一个实时的方式做了很多次。
您不能使用通配符筛选两个以上的条件。 您的样本数据的性质是,您将使用=“Brian *”,=“Mark *”或=“* John”来将首字母通配为“ 开始…”或“ 结束…”标准。 您只能在任何一个filter操作中使用其中的两个。 您不能通过创build通配值的数组添加第三个。
这工作:
with activesheet.cells(1, 1).currentregion .AutoFilter Field:=1, Criteria1:="=Brian*", Operator:=xlOr, Criteria2:="=*John" end with
这不起作用:
with activesheet.cells(1, 1).currentregion .AutoFilter Field:=1, Criteria1:=Array("Brian*", "Mark*", "*John"), Operator:=xlFilterValues end with
第二种方法不起作用,因为如果您在数组中使用通配符来自动筛选,则仅限于2个术语。 网上有解决方法和解决scheme。