欧美日韩国产一区二区|qovd片|小明个人发布看看|小浪货你夹真紧水又多|老头把我添高潮了A片故|99热久久精品国产一区二区|久久久春色AV

軟件|EXCEL仿軟件制作模糊查找下拉篩選框

【軟件|EXCEL仿軟件制作模糊查找下拉篩選框】軟件|EXCEL仿軟件制作模糊查找下拉篩選框

文章圖片

軟件|EXCEL仿軟件制作模糊查找下拉篩選框

文章圖片



多數(shù)分析軟件中的篩選器可以實(shí)現(xiàn)部分字段輸入后顯示下拉篩選框供使用者快速獲取需要的選項(xiàng)值 。 如在tableau中的使用效果是這樣的 。


在我的實(shí)際工作中 , 這樣的操作方式是非常便捷的 , 在不需要輸入全部款號(hào)的情況下也可進(jìn)行篩選 , 特別是當(dāng)你只記得款號(hào)的部分內(nèi)容時(shí) , 這種篩選器表現(xiàn)的尤為省時(shí)省力 。
軟件畢竟不常用 , 那么如何利用Excel制作出仿軟件式模糊查找下拉篩選框呢?
需要用的工具有列表框、文本框、宏代碼、SQL 。 代碼部分會(huì)在文末分享 , 所以實(shí)際操作中沒(méi)有想象中的困難 。
使用時(shí)只需要插入列表框、文本框控件 , 再將文末的代碼放置在相應(yīng)的Sheet宏編輯器內(nèi) 。

上述操作完成后 , 就可以進(jìn)行額外的“高級(jí)操作” 。

代碼中<select distinct 名稱 from [清單$
where 名稱>需要修改的部分是“名稱”和“清單” 。 其中名稱為本例中的款號(hào) , 清單為需要查找的款號(hào)所在的工作表 。
本例的全部代碼如下:
Private Sub TextBox1_GotFocus()
TextBox1.Text = \"\"
End Sub
Private Sub TextBox1_Change()
Dim arr() As Variant
ListBox1.Visible = True
'sql基本模式
Set conn = CreateObject(\"Adodb.Connection\")
conn.Open \"Provider=Microsoft.ACE.OLEDB.12.0;extendedproperties=excel 12.0;data source=\" & ThisWorkbook.Path &\"/\" & ThisWorkbook.Name
Sql = \"select distinct名稱from [清單$
where名稱like '%\" & TextBox1.Text & \"%'\"
Set rst = conn.Execute(Sql)
'sql基本模式語(yǔ)句結(jié)束
ListBox1.Clear
On Error Resume Next
arr = rst.getrows
ListBox1.List() = Application.Transpose(arr)
Set rs = Nothing
conn.Close
If ListBox1.ListCount < 1 Then
ListBox1.Visible = False
End If
End Sub
Private Sub ListBox1_Click()
TextBox1.Value = https://mparticle.uc.cn/api/ListBox1.Value
ListBox1.Visible = False
End Sub

    相關(guān)經(jīng)驗(yàn)推薦