Q:我想在工作表中应用动态筛选,当我在文本框中输入时,Excel会根据我输入的数据动态显示工作表中与输入值相匹配的数据,如何实现?
如下图1所示,在工作表单元格B1中放置了一个文本框控件,当在该文本框中输入数据时,工作表中会根据输入的值自动匹配并显示相应的数据行。
图1
A:在该工作表代码模块中,输入下面的代码:
Private Sub TextBox1_Change()
If Len(TextBox1.Value) = 0 Then
Sheet1.AutoFilterMode = False
Else
If Sheet1.AutoFilterMode = True Then
Sheet1.AutoFilterMode = False
End If
Sheet1.Range("A2:C" &Rows.Count).AutoFilter Field:=1, Criteria1:="*" & TextBox1.Value& "*"
End If
End Sub
代码利用了Excel的自动筛选功能来实现。相应的效果如下图2所示。
图2
注:今天的问题来自于ozgrid.com论坛,供有兴趣的朋友参考。
欢迎在下面留言,完善本文内容,让更多的人学到更完美的知识。