模糊筛选
- 1. 原因
- 2. 参考
- 3. VBA指令
- 3.1 将 * 添加在 C 的两侧即可筛选所有包含 C 的值
- 3.2 将 * 添加在 C 的前面即可筛选所有最后一个字符包含 C 的值
- 3.3 将 * 添加在 C 的后面即可筛选所有第一个字符包含 C 的值
1. 原因
此前写筛选方式,都是高级筛选或者按条件筛选,无法进行模糊筛选,即通过单个字符筛选该列存在该字符的数据。
2. 参考
来源于Excel自带的名单指示方式中的提示。
打开查询方式如下:
第一步,
第二步,
此处提示:
可用 ?代表单个字符
用 * 代表任意多个字符
于是便可通过上述方式进行筛选,VBA的指令可借鉴于此。
3. VBA指令
3.1 将 * 添加在 C 的两侧即可筛选所有包含 C 的值
ActiveSheet.Range("$A$1:$L$41500").AutoFilter Field:=3, Criteria1:="*" & "C" & "*" ' 筛选第3列,筛选值为包含 C 的值
3.2 将 * 添加在 C 的前面即可筛选所有最后一个字符包含 C 的值
ActiveSheet.Range("$A$1:$L$41500").AutoFilter Field:=3, Criteria1:="*" & "C" ' 筛选第3列,筛选值为包含 C 的值
3.3 将 * 添加在 C 的后面即可筛选所有第一个字符包含 C 的值
ActiveSheet.Range("$A$1:$L$41500").AutoFilter Field:=3, Criteria1:="C" & "*" ' 筛选第3列,筛选值为包含 C 的值
参考地址:
[1] https://docs.microsoft.com/zh-cn/office/client-developer/excel/excel-home?redirectedfrom=MSDN
该代码仅供学习,如商业转载请联系本人,非商业转载请注明出处
如有错误,望批评指正,谢谢!!!