我使用下面的VBA代码来过滤我的Excel中的行根据我在C5单元格的值使用vba和过滤器的excel搜索引擎?
Sub DateFilter()
'hide dialogs
Application.ScreenUpdating = False
'filter for records that have June 11, 2012 in column 3
ActiveSheet.Range("C10:AS30").AutoFilter Field:=1, Criteria1:="*" & ActiveSheet.Range("C5").Value & "*"
Application.ScreenUpdating = True
End Sub
我的Excel列的样子:
A B C
Gold XXX Manchester
Silver TTT London
Black ZZZ Scotland
White WWW Wales
所以,如果我输入单词在我的小区C5“黄金”,跑到我行得到过滤,只有下面的宏将被显示:
Gold XXX Manchester
不过,现在我希望能够通过将筛选我行从列a,b或c中的值输入到我的单元格c5中并过滤行。
所以,如果我输入字母“TTT”到C5单元格,这将会过滤我行像这样:
Silver TTT London
如果我在威尔士输入到单元格C5它过滤像我行:
White WWW Wales
我想要做的另一件事是能够根据多种搜索条件来筛选我行,所以如果我把从列A,b和C的值的组合,我的手机C5像这样:
White WWW Wales
然后我结束了以下过滤结果:
White WWW Wales
请能有人告诉我,我会怎么能够做到这一点?在此先感谢
您如何期望Excel或VBA知道您的文本适用于哪一列?一旦你弄清楚了,你将会很好地解决问题。例如,列B总是三个字符?如果是这样,你可以建立一些逻辑来检查单元格C5的长度,如果它等于3,你知道它适用于列B.现在如果有人输入'红色',你会被堵塞,但希望你可以制定出来关于如何处理该问题的一些逻辑(也许是首先检查的颜色列表)。在开始编码之前,确实需要做出许多设计决定......至少这是我的0.02美元。 – sous2817
从这些列添加包含连接字符串的辅助列,并用空格分隔。此列将用于过滤,如果需要,您可以隐藏它。也可以尝试不同的选项,例如用*替换搜索字符串中的所有空格,等等。 – omegastripes