Re: [問題] ComboBox選值後,下拉再次顯示所有內容?

看板Office作者 (餅乾小舖)時間3年前 (2020/07/08 09:34), 編輯推噓0(006)
留言6則, 1人參與, 3年前最新討論串2/2 (看更多)
你好,我也在嘗試撰寫模糊比對的下拉選單 我遇到的問題是當下拉選單的搜索條件改變時,下拉選單的欄位長度沒有重新刷新 能請教您的實現方式嗎? 這是所有項目 https://i.imgur.com/G16DY95.jpg
這是輸入搜索條件 https://i.imgur.com/keo5TQM.jpg
刪除1後應該要顯示回三個選項 https://i.imgur.com/TEAaGNK.jpg
但是他變成在選單第一個內顯示三個 如果滑鼠重新點選箭頭他就顯示正常了 https://i.imgur.com/eWdW57z.jpg
應該怎麼用vba讓下拉選單重新打開呢 這是實現代碼 If ComboBox1.ListIndex = -1 Then ComboBox1.Clear For i = 0 To UBound(chanpin) If InStr(chanpin(i, 1), ComboBox1.Value) Then ComboBox1.AddItem chanpin(i, 1) End If Next ComboBox1.DropDown End If ※ 引述《xc9500 (只需要20秒的瘋狂勇氣!)》之銘言: : 軟體:Excel : 版本: 2016 : 各位大大好!請問一下,在comboBox的下拉選單中,有做模糊比對的功能, : 當手動輸入或是在下拉選完值後,再次下拉時,下拉選單只會呈現之前所選的值。 : 例如:下拉選單中有5筆資料值,當選擇第一筆資料值"ABC"後, : 再次點選下拉選單按鈕時,就只會呈現出"ABC". : 所以想請問一下,有什麼方法,可以當輸入框中已經有值時,再點選下拉按鈕時, : 仍會重新顯示5筆資料來供選擇呢? : 附檔如下: : https://1drv.ms/x/s!Atz5-ybVJn3XyiDpwtym8tb5UeBh?e=IKY5h6 : 請再幫忙解惑一下,謝謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 220.136.93.221 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Office/M.1594172068.A.304.html

07/08 11:32, 3年前 , 1F
不用判斷If ComboBox1.ListIndex = -1...
07/08 11:32, 1F

07/08 11:32, 3年前 , 2F
If InStr(chanpin(i, 1)...內設個陣列變數來暫存符合的變
07/08 11:32, 2F

07/08 11:32, 3年前 , 3F
數chanpin的值,ComboBox1.DropDown上面combobox1.list=陣
07/08 11:32, 3F

07/08 11:32, 3年前 , 4F
列變數
07/08 11:32, 4F

07/08 11:32, 3年前 , 5F
觸發事件寫在ComboBox1_Change
07/08 11:32, 5F

07/08 11:32, 3年前 , 6F
文章代碼(AID): #1V1IAaC4 (Office)
文章代碼(AID): #1V1IAaC4 (Office)