具有条件1:= *的自动过滤器返回所有字母单元格

时间:2019-06-03 20:05:19

标签: vba

当我将AutoFilter函数与Criteria1:="*"一起使用时,它将返回所有字母单元格,而不仅仅是返回值"*"的单元格。

假设第1列中的可能值为"*", "Apple", "Tomato", "167", "55"。以下代码返回包含"*", "Apple" and "Tomato"而不是"*"的行。

感谢您的帮助!

Sheets("Sheet1").Range("$A$1:$U$1291").AutoFilter Field:=1, Criteria1:="*"

1 个答案:

答案 0 :(得分:1)

扩展Scott和David的评论:

星号(*)是通配符,它​​用作比较标准(如果您更喜欢该术语,则为 fuzzy 逻辑标准)。

因此,从本质上讲,通过编写Criteria1:="*"来告诉excel您的搜索条件是任何字符。 documentation中的示例:

criteria1:="*east"将显示northeastsoutheast或包含east的任何内容。

要转义,请使用波浪号~,后跟通配符,即"~*"

示例

"*cake"返回cake

"~*cake"返回*cake

"c?ke"返回c(any character)ke

"c~?ke"返回c?ke