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

更新於 2024/12/01閱讀時間約 2 分鐘

問題:

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

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

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

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


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



想法 / 解法:

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



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



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

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

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

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

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

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

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

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



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



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



影片:

YouTube 影片:

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




檔案下載

特色:

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


注意:

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

這點要特別特別注意!

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

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



彩蛋

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




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




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

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


avatar-img
128會員
44內容數
Meiko微課頻道主要以辦公室應用為出發點,針對上班族群所遇到的問題進行分享
留言0
查看全部
avatar-img
發表第一個留言支持創作者!
此 VBA 是利用 Meiko微課頻道 的 Excel教學 E98 | Excel工作表,各自轉存成獨立的PDF文件,所產生的靈感而設計!
媽 ~ 我終於把【工程數學】應用在生活中了 !! 《 LOOKUP 與 複數 的完美結合運用 》
當【下拉清單】的資料來源被改變時,可自動更新之前從【下拉清單】所挑選的【選項內容】!
自動生成 100 個按鈕,就是這麼簡單 ~ 從視窗按鈕輸入文字 - 使用 Excel VBA 物件類別模組 !
利用【字型】來設計【核取方塊】,再加入 Excel VBA 來模擬【儲存格連結】的功能 !
怎麼把 表單控制項 的 核取方塊 變大 ? 這是個很久很久以前就遇過的問題,根據查得的資訊顯示,至今約莫 11 年前就有人提過這問題了。 本篇將介紹一套 VBA 方法來達成。
此 VBA 是利用 Meiko微課頻道 的 Excel教學 E98 | Excel工作表,各自轉存成獨立的PDF文件,所產生的靈感而設計!
媽 ~ 我終於把【工程數學】應用在生活中了 !! 《 LOOKUP 與 複數 的完美結合運用 》
當【下拉清單】的資料來源被改變時,可自動更新之前從【下拉清單】所挑選的【選項內容】!
自動生成 100 個按鈕,就是這麼簡單 ~ 從視窗按鈕輸入文字 - 使用 Excel VBA 物件類別模組 !
利用【字型】來設計【核取方塊】,再加入 Excel VBA 來模擬【儲存格連結】的功能 !
怎麼把 表單控制項 的 核取方塊 變大 ? 這是個很久很久以前就遇過的問題,根據查得的資訊顯示,至今約莫 11 年前就有人提過這問題了。 本篇將介紹一套 VBA 方法來達成。
你可能也想看
Google News 追蹤
Thumbnail
*合作聲明與警語: 本文係由國泰世華銀行邀稿。 證券服務係由國泰世華銀行辦理共同行銷證券經紀開戶業務,定期定額(股)服務由國泰綜合證券提供。   剛出社會的時候,很常在各種 Podcast 或 YouTube 甚至是在朋友間聊天,都會聽到各種市場動態、理財話題,像是:聯準會降息或是近期哪些科
Thumbnail
在 Excel VBA 中,使用 ActiveSheet.ShowAllData 方法顯示篩選過的數據時,可能會遇到錯誤。如果當前沒有篩選條件而直接調用此方法,將導致執行錯誤。本文介紹檢查篩選狀態,來安全地使用 ShowAllData。還探討了使用 On Error Resume Next 的風險。
Thumbnail
本文介紹了三種日曆控件,這些控件可以同時應用於工作表與Userform中,並附有VBA撰寫的簡單運用範例及下載連結。日曆控件不僅具備多樣的顯示介面與主題選擇,還能提供排程提示功能,適合需要靈活運用日曆。無論是什麼環境使用,這些控件都能提升效率。希望能幫助找到合適的日曆選擇,並學會如何簡單配置。
Thumbnail
在這篇文章中,探討 Meiko 老師如何使用 Power Query 在 Excel 中自動篩選非重複記錄。從早期的 Excel 2003 版本到今天的 Office 365,讓效率提高。分享了創新思維的培養以及使用 ChatGPT 來開發 Excel VBA 的優勢並提供了寶貴的見解和檔案下載。
Thumbnail
本文探討如何使用Excel VBA將資料快速套用到Word範本中,並最終輸出成指定名稱的PDF檔案。透過解決合併列印和PDF檔名設定的步驟,分享了使用Word和Excel VBA的不同方法,並針對程式碼進行了Debug與優化,提供實用的解決方案,並提供寶貴的資訊與技巧。
Thumbnail
這篇文章分享如何在 Excel VBA 中依照特定位置的數字進行由小到大的排序。藉由社群網友的解答與互動,探索了多種解決方案,包括會計業界專家的經驗以及函數大師的逐步拆解方法。文章中提及了使用 AI 工具如 ChatGPT 的實際應用,顯示科技如何幫助解決問題。
Thumbnail
1.宣言指定代稱活頁簿或頁籤 2.同時控制兩個活頁簿 3.調整欄寬、刪除欄
Thumbnail
1. 如何開始巨集(VBA) 2. 初步認識編寫VBA的面板 3. 儲存啟用VBA的活頁簿檔案
Thumbnail
我們將介紹如何根據自己的需要自定義操作流程,提高Word使用的效率和便捷性。在本文中,我們將介紹如何利用VBA在Word中自動插入底稿頁尾。
Thumbnail
我們將介紹如何自己的需要自定義操作流程,提高Word使用的效率和便捷性。在本文中,我們將介紹如何利用VBA在Word中自動插入底稿頁首。
Thumbnail
*合作聲明與警語: 本文係由國泰世華銀行邀稿。 證券服務係由國泰世華銀行辦理共同行銷證券經紀開戶業務,定期定額(股)服務由國泰綜合證券提供。   剛出社會的時候,很常在各種 Podcast 或 YouTube 甚至是在朋友間聊天,都會聽到各種市場動態、理財話題,像是:聯準會降息或是近期哪些科
Thumbnail
在 Excel VBA 中,使用 ActiveSheet.ShowAllData 方法顯示篩選過的數據時,可能會遇到錯誤。如果當前沒有篩選條件而直接調用此方法,將導致執行錯誤。本文介紹檢查篩選狀態,來安全地使用 ShowAllData。還探討了使用 On Error Resume Next 的風險。
Thumbnail
本文介紹了三種日曆控件,這些控件可以同時應用於工作表與Userform中,並附有VBA撰寫的簡單運用範例及下載連結。日曆控件不僅具備多樣的顯示介面與主題選擇,還能提供排程提示功能,適合需要靈活運用日曆。無論是什麼環境使用,這些控件都能提升效率。希望能幫助找到合適的日曆選擇,並學會如何簡單配置。
Thumbnail
在這篇文章中,探討 Meiko 老師如何使用 Power Query 在 Excel 中自動篩選非重複記錄。從早期的 Excel 2003 版本到今天的 Office 365,讓效率提高。分享了創新思維的培養以及使用 ChatGPT 來開發 Excel VBA 的優勢並提供了寶貴的見解和檔案下載。
Thumbnail
本文探討如何使用Excel VBA將資料快速套用到Word範本中,並最終輸出成指定名稱的PDF檔案。透過解決合併列印和PDF檔名設定的步驟,分享了使用Word和Excel VBA的不同方法,並針對程式碼進行了Debug與優化,提供實用的解決方案,並提供寶貴的資訊與技巧。
Thumbnail
這篇文章分享如何在 Excel VBA 中依照特定位置的數字進行由小到大的排序。藉由社群網友的解答與互動,探索了多種解決方案,包括會計業界專家的經驗以及函數大師的逐步拆解方法。文章中提及了使用 AI 工具如 ChatGPT 的實際應用,顯示科技如何幫助解決問題。
Thumbnail
1.宣言指定代稱活頁簿或頁籤 2.同時控制兩個活頁簿 3.調整欄寬、刪除欄
Thumbnail
1. 如何開始巨集(VBA) 2. 初步認識編寫VBA的面板 3. 儲存啟用VBA的活頁簿檔案
Thumbnail
我們將介紹如何根據自己的需要自定義操作流程,提高Word使用的效率和便捷性。在本文中,我們將介紹如何利用VBA在Word中自動插入底稿頁尾。
Thumbnail
我們將介紹如何自己的需要自定義操作流程,提高Word使用的效率和便捷性。在本文中,我們將介紹如何利用VBA在Word中自動插入底稿頁首。