KutoolsforOffice — 一套方案,五大工具。事半功倍。三月特賣:20% 折扣

如何從下拉式清單中選取多個項目,並填入 Excel 儲存格?

作者修改日期

在 Excel 中管理資料時,經常需要從下拉式清單中選取值。但若您希望一次選取多個項目,並將它們全部顯示在同一個儲存格中,該怎麼辦?Excel 預設並不支援此功能。本指南將逐步帶您掌握在 Excel 下拉式清單中實現多選的最佳技巧。

顯示 Excel 單一儲存格中單一下拉式清單選取項的螢幕截圖向右箭頭顯示從 Excel 下拉式清單中選取多個項目並填入單一儲存格的結果之螢幕截圖

使用 VBA 程式碼從下拉列表中選取多個項目

使用 Kutools for Excel 輕鬆從下拉列表中選取多個項目


使用 VBA 程式碼從下拉列表中選取多個項目

以下提供一些可協助您順利完成此任務的 VBA 程式碼。

從儲存格的下拉列表中選取重複項目

1. 建立下拉列表後,請在工作表標籤上按一下滑鼠右鍵,並從快捷功能表中選取「檢視程式碼」。
顯示已選取「檢視程式碼」選項的快捷功能表之螢幕截圖

2. 接著,在「Microsoft Visual Basic for Applications」視窗中,將下方程式碼複製並貼上至空白的指令碼視窗中。

VBA:從儲存格的下拉列表中選取多個項目

Private Sub Worksheet_Change(ByVal Target As Range)
'UpdatebyExtendoffice20221111
    Dim xRgVal As Range
    Dim xStrNew As String
    On Error Resume Next
    Set xRgVal = Cells.SpecialCells(xlCellTypeAllValidation)
    If (Target.Count > 1) Or (xRgVal Is Nothing) Then Exit Sub
    If Intersect(Target, xRgVal) Is Nothing Then Exit Sub
    If Target.Value = "" Then Exit Sub
    Application.EnableEvents = False
    xStrNew = Target.Value
    Application.Undo
    If xStrNew = Target.Value Then
    Else
    xStrNew = xStrNew & " " & Target.Value
    Target.Value = xStrNew
    End If
    Application.EnableEvents = True
End Sub

3. 儲存程式碼後,關閉此視窗即可返回下拉式清單,現在您能從中選取多個項目。

注意:

1. 使用此 VBA 程式碼時,項目預設以空格分隔;您只需將程式碼中的 “xStrNew = xStrNew & “ “ & Target.Value“ 修改為其他格式,即可輕鬆變更分隔符號。例如,改用 “xStrNew = xStrNew & “,“ & Target.Value“ 即可讓項目以逗號分隔。

2. 此 VBA 程式碼適用於工作表中的所有下拉式選單。

從下拉列表中選取多個不重複項目至儲存格

若您希望從下拉列表中僅選取不重複的項目填入儲存格,可重複上述步驟並搭配下方程式碼使用。

VBA:從下拉列表中選取多個不重複項目至儲存格

Private Sub Worksheet_Change(ByVal Target As Range)
'UpdatebyExtendoffice20221111
    Dim I As Integer
    Dim xRgVal As Range
    Dim xStrNew As String
    Dim xStrOld As String
    Dim xFlag As Boolean
    Dim xArr
    On Error Resume Next
    Set xRgVal = Cells.SpecialCells(xlCellTypeAllValidation)
    If (Target.Count > 1) Or (xRgVal Is Nothing) Then Exit Sub
    If Intersect(Target, xRgVal) Is Nothing Then Exit Sub
    If Target.Value = "" Then Exit Sub
    Application.EnableEvents = False
    xFlag = True
    xStrNew = " " & Target.Value & " "
    Application.Undo
    xStrOld = Target.Value
    If InStr(1, xStrOld, xStrNew) = 0 Then
        xStrNew = xStrNew & xStrOld & " "
    Else
        xStrNew = xStrOld
    End If
    Target.Value = xStrNew
    Application.EnableEvents = True
End Sub

上述兩種 VBA 程式碼均不支援刪除儲存格內容中的特定部分,僅能清除儲存格內的所有內容。


使用 Kutools for Excel 輕鬆從下拉列表中選取多個項目

使用「Kutools for Excel」簡化您的 Excel 工作流程!其「啟用下拉列表多重選擇」功能,讓您輕鬆從下拉列表中選取多個項目,並自動整合顯示於單一儲存格中,無需撰寫複雜的 VBA 程式碼。告別繁瑣手動操作,體驗更聰明、更流暢的 Excel 下拉列表處理方式!

Kutools for Excel 提供超過 300 項進階功能,簡化複雜作業,提升創造力與效率。整合 AI 功能,Kutools 能精準自動化各項任務,讓資料管理輕鬆無負擔。Kutools for Excel 的詳細資訊……         免費試用……

1. 點擊「Kutools」>「下拉列表」>「啟用進階下拉列表」,接著再次從「下拉列表」中點選「允許下拉列表多重選擇」。請參閱截圖:

按一下以啟用進階下拉式清單向右箭頭按一下「多重選取下拉式清單」功能

2. 在「使下拉列表可多次選擇」對話方塊中,請依下列方式進行設定。

  • 2.1) 選取包含下拉列表的儲存格;
  • 2.2) 在「分隔符號」方塊中,輸入您要用來分隔多個項目的分隔字元;
  • 2.3) 請依需求勾選「啟用搜尋功能」選項。(勾選後,即可在下拉列表中進行搜尋。)
  • 2.4) 點選「確定」按鈕。
  • 在對話方塊中指定選項

現在,當您點擊含有下拉清單的儲存格時,將立即彈出選項清單!只需點擊按鈕即可新增項目至儲存格,或點擊按鈕依需求移除項目。精彩操作示範如下:

在 Excel 中從下拉列表選取多個項目,不必再視為難事!透過本指南提供的逐步方法,您可快速運用 VBA 程式碼啟用多選功能,或藉由 Kutools for Excel 這類工具輕鬆簡化流程。若您想掌握更多 Excel 實用技巧,我們的網站提供數千篇教學文章,立即探索,提升效率!


相關文章:

在 Excel 中插入下拉列表
透過下拉列表,您能協助自己或他人在工作表中更有效率地輸入資料!有了下拉列表,即可快速從清單中挑選項目,無需手動輸入數值,輕鬆提升工作效率。

支援多選的下拉列表
在 Excel 中,資料驗證下拉列表預設僅能單選。如何實現如下方截圖所示的多選效果?本文提供的方法將協助您輕鬆達成此功能!

在 Excel 下拉列表中輸入時自動完成
若您的資料驗證下拉列表包含大量選項,您必須不斷向下捲動清單才能找到合適項目,或直接在儲存格中完整輸入文字。若能在輸入首幾個字母時自動完成選項,操作將更加輕鬆高效!

在 Excel 中建立可搜尋的下拉列表
當下拉列表選項繁多時,要快速找到合適項目並不容易。我們先前已介紹過:只要在下拉方塊中輸入首字母,即可自動完成選項。除此之外,您還能進一步為下拉列表加入搜尋功能,大幅提升從清單中查找正確值的效率!

最佳 Office 生產力工具

🤖KUTOOLS AI 助手:基於以下內容徹底革新數據分析:智慧執行     產生程式碼  建立自訂公式    分析資料並產生圖表  呼叫增強函數……
熱門功能尋找、醒目提示或標記重複值     刪除空白行     合併列或儲存格而不遺失資料     不使用公式的四捨五入……
高級 LOOKUP多重條件 VLookup    多重數值 VLookup     跨多個工作表 VLookup      模糊查找……
高級下拉列表快速建立下拉式清單     相依式下拉式清單     多選下拉式清單……
欄位管理員新增指定數量的欄位移動欄位切換隱藏欄位的可見狀態比較範圍與欄位……
精選功能網格聚焦     設計視圖   增強編輯欄    工作簿與工作表管理員     資源庫(自動文字)  日期提取     合併工作表    加密/解密儲存格    依清單傳送電子郵件     超級篩選      特殊篩選(篩選粗體儲存格/斜體/刪除線……) ......
頂尖 15 工具組12 文字工具添加文本刪除特定字符,……)   50+ 圖表 類型甘特圖,……)   40+ 實用公式基於生日計算年齡,……)   19 插入工具插入二維碼從路徑插入圖片,……)   12 轉換工具金額轉大寫匯率轉換,……)   7 合併和拆分工具高級合併行分割儲存格,……)……以及更多
在您的慣用語言中使用 Kutools—支援英文、西班牙文、德文、法文、中文及另外 40+ 種語言!

運用 Kutools for Excel 強化您的 Excel 技能,體驗前所未有的高效能!Kutools for Excel 提供超過 300 項進階功能,大幅提升生產力並節省寶貴時間。立即點擊,取得您最需要的功能……


Office Tab 為 Office 帶來分頁式介面,讓您的工作更輕鬆自在!

  • 在 Word、Excel、PowerPoint 中啟用分頁式編輯與閱讀功能,以及 Access、Visio 與 Project。
  • 在同視窗的新分頁中開啟並建立多份文件,而非另開新視窗。
  • 每天為您提升 50% 的工作效率,並省下數百次滑鼠點擊!

所有 Kutools 增益集,一個安裝程式

Kutools for Office 套件整合了 Excel、Word、Outlook 與 PowerPoint 的增益集,以及 Office Tab Pro,非常適合需要跨多個 Office 應用程式協作的團隊使用!

ExcelWordOutlookTabsPowerPoint
  • 全能套件— 包含 Excel、Word、Outlook 與 PowerPoint 增益集,以及 Office Tab Pro
  • 一個安裝程式,一個授權— 數分鐘內即可完成設定(支援 MSI)
  • 協同運作更出色— 在多個 Office 應用程式間實現流暢的生產力體驗
  • 30 天完整功能試用— 無需註冊,無需信用卡
  • 超值之選— 比單獨購買各增益集更省費用