2023-12-02|閱讀時間 ‧ 約 3 分鐘

[VBA]【下拉清單】《不重複》、《無空白》且《可排序》的製作方法

問題:

在 Excel 2016 (含以前版本) 要製作下拉清單,一定會遇到以下三大問題,

  1. 如何把重複項目去除。
  2. 清單資料來源包含公式時,如何去除空白項目。
  3. 如何將清單項目做排序。

這三大問題,一直是大家常遇到的問題。

當然,【函數再加上輔助列】絕對能夠解決這些問題,但還要手動輸入一串公式會有點麻煩 ...


今天剛好有機會能一次全部解決!!



想法 / 解法:

第 1 項、【如何把重複項目去除】:
網路上有很多資料可以參考。在此就不詳細說明。



第 2 項、【清單資料來源包含公式時,如何去除空白項目】:
這個就稍微棘手一點,需要一些公式來處理。



第 3 項、【如何將清單項目做排序】:
這個功能想法是臨時突然想到的,覺得蠻不錯的,所以就將這個功能加進來!

但,這個功能也不是我想做就能做的出來的,而一切都得歸功於《 2023/1/1 凌晨1點13分 》的自己,還在研究「自訂表單」內的「下拉式方塊」,要如何做到排序的功能。
當時遇到瓶頸一直無法解決,好在轉個寫法,就成功了!

原來【2023年】人家在跨年,我在寫程式 ...

從工具箱拉到自訂表單內的【下拉式方塊】

現在回想起來,真的很感謝當時努力研究的自己,現在才能直接拿【當時的學習研究成果】來套用到 第 3 項 的排序功能上!!

看到 第 3 項 功能順利在 下拉清單 內實現,那一瞬間真的是太感動了!!
雖然這程式碼也不是啥偉大發明,更沒啥了不起的,但能夠【突破與超越自己】,就是一件很另人值得高興的事!!!



因為【能夠贏過我的人,只有我自己啊!~ 哈哈。】



( 影子籃球員 ) 青峰大輝:能夠贏過我的人,只有我自己!



影片:

YouTube 影片:

https://www.youtube.com/watch?v=S_5G_frANd0




檔案下載

特色:

  1. 自動把重複項目去除。
  2. 當清單資料來源包含公式時,自動去除空白項目。
  3. 可設定是否要將清單項目做排序,共三種方式可選擇:無、遞增、遞減,預設為無。


注意:

此做法是將【資料驗證】 -> 【清單】 -> 【來源】欄位內填入固定資料,
所以【下拉清單】的選項,已無法隨著【資料來源】的變更而自動變化~

這點要特別特別注意!

VBA 會將【來源】欄位內填入固定資料



彩蛋

順境不會讓人成長,逆境才會!
但前提是,你要有足夠的 勇氣 跨過這個逆境才行!!




踢出一個屬於你自己的精彩未來!!




以上就是這次的分享,請持續關注  和 Meiko微課頻道,謝謝大家 ~

有任何問題,請到【opa的沙龍】【Excel VBA 情境學習】一起討論有關 VBA 的問題,或加入 LINE社群 Meiko微課小綠群(粉絲交流群),歡迎您的加入。


分享至
成為作者繼續創作的動力吧!
© 2024 vocus All rights reserved.