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

如何在 Excel 中將欄位資料轉換為以逗號分隔的清單?

作者修改日期

處理 Excel 資料時,您經常需要將垂直排列的項目清單轉換為單一逗號分隔字串。無論是為資料庫準備輸入資料、撰寫報告,還是單純整理工作表,都有多種方法可達成此目的。以下我們將介紹四種最實用的高效做法:

使用公式將列轉換為逗號分隔清單

使用 Kutools for Excel 將列轉換為逗號分隔清單

使用 VBA 程式碼將列轉換為逗號分隔清單

將直欄清單轉換為以逗號分隔的清單


使用公式將列轉換為逗號分隔清單

Excel 未內建「欄轉逗號清單」功能,但您可輕鬆實現:在 Office 365/2019 或更新版本中使用 TEXTJOIN 函數,或在任何 Excel 版本中搭配 CONCAT 與 IF 函數,簡化資料處理流程。

公式 1:TEXTJOIN 函數(Excel 2019 及更新版本、Office 365)

作為 Excel 最先進的串接函數,TEXTJOIN 憑藉兩大核心優勢——靈活自訂分隔符號與自動忽略空白儲存格——為現代 Excel 使用者打造最簡便的解決方案。

1. 選取要顯示逗號分隔清單的儲存格,並輸入下列公式:

=TEXTJOIN(", ", TRUE, A2:A10)

2. 按下 Enter,即可取得逗號分隔值。

使用 TEXTJOIN 函數將直欄清單轉換為以逗號分隔的清單

公式說明:
  • 「,」為分隔符(逗號後接空格)。
  • TRUE 表示要 Excel 忽略空白儲存格。
  • A2:A10 即為您的來源區域。
專業提示若只要唯一項目,可嵌套 UNIQUE 函數:
=TEXTJOIN(", ", TRUE, UNIQUE(A2:A10))
優點:
  • 🔹簡單易用:只需一個函數即可輕鬆實現。
  • 🔹分隔符彈性:可依需求選用「,」(逗號加空格)或僅使用「,」。
  • 🔹自動處理:當 ignore_empty 設為 TRUE 時,系統將自動跳過空白儲存格。
缺點:
  • 🔸需搭配 Excel 2019 或更新版本,或 Office 365 使用。

公式 2:CONCAT 與 IF 函數(所有 Excel 版本)

在 TEXTJOIN 推出之前,您可以結合 CONCAT 與 IF 函數來組合清單,再手動移除開頭的分隔符。

1. 選取要顯示逗號分隔清單的儲存格,並輸入下列公式:

=CONCAT(IF(A2:A10<>"", A2:A10 & ", ", ""))

2. 同時按下 Ctrl + Shift + Enter 鍵,立即取得結果!

使用 CONCAT 函數將直欄清單轉換為以逗號分隔的清單

公式說明:
  • IF(A2:A100““, A2:A100 & “,“, ““):檢查 A2:A100 中的每個儲存格,若非空白,則傳回其值並加上逗號;若為空白,則傳回空字串。
  • CONCAT(...):將陣列中的所有元素串接為單一字串。
優點:
  • 🔹相容性廣泛:適用於所有支援陣列公式的 Excel 版本,無需仰賴新函數。
  • 🔹忽略空白儲存格:IF 檢查會自動略過空白儲存格。
缺點:
  • 🔸操作繁瑣:必須以陣列公式輸入,使用者需按下 Ctrl + Shift + Enter — 許多新手常遺漏此步驟。
  • 🔸效能不佳:處理數萬列以上的大型資料集時,計算速度可能明顯變慢,甚至導致系統當機。
  • 🔸結果固定:若要移除結尾的分隔符,需額外步驟才能刪除末尾的逗號。

使用 Kutools for Excel 將列轉換為逗號分隔清單

Kutools for Excel 內建強大的合併行/列/儲存格並保留值工具,只需幾次點擊,就能將整列內容輕鬆合併至單一儲存格!選取來源區域與文字分隔符(無論是逗號、分號、空格或任何自訂符號),立即生成整合後的分隔清單,無需手動逐一複製貼上各項目。此工具更支援忽略空白儲存格、保留原始格式等實用選項,是將垂直資料快速轉換為整潔逗號分隔清單的理想解決方案,效率提升不容錯過!

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

1. 選取要轉換為逗號分隔清單的儲存格範圍,然後點擊 Kutools > 合併和拆分 > 合併行/列/儲存格並保留值

點擊 Kutools 的「合併儲存格(不遺失資料)」功能

2. 在開啟的合併列或列對話方塊中,請執行以下操作:

  • (1) 在「根據以下方式合併選中區域」區段中,勾選「合併到一個儲存格」選項。
  • (2) 在分隔符區段中,勾選「其他分隔符」選項,並輸入逗號「,」。
  • (3.) 選擇如何處理原始儲存格資料。(您可以保留或刪除原始儲存格內容。)
  • (4.) 若要將合併後的值輸出至區段下方的指定儲存格,請選取「其他儲存格」選項,然後點擊選擇一個儲存格以輸出結果。
  • (5.) 最後,點擊「確定」按鈕完成操作。
    在對話方塊中設定選項

結果將插入至您指定的目標儲存格。

使用 Kutools 將直欄清單轉換為以逗號分隔的清單

優點:
  • 🔹極致使用者友善。
  • 🔹無需公式或程式碼。
  • 🔹流暢處理大範圍資料。
  • 🔹可合併列、欄或範圍,搭配任意分隔符號保留原有格式,並自由選擇輸出位置。
缺點:
  • 🔸需安裝。

使用 VBA 程式碼將列轉換為逗號分隔清單

或者,若您希望自動化此任務,或需處理更大且動態變化的範圍,可撰寫 VBA 巨集:遍歷指定欄中的每個儲存格,將非空白值附加逗號(或您自訂的任何分隔符),再移除結尾多餘的分隔符,最後將完整串接的逗號分隔字串輸出至目標儲存格。

1. 按住 Alt 鍵並按下 F11,即可開啟 Microsoft Visual Basic for Applications 視窗。

2. 點擊插入 模組,並將 VBA 程式碼複製到模組中。

VBA:將列轉換為逗號分隔清單

Sub ChangeRange()
    ' Updateby Extendoffice
    Dim rng As Range
    Dim InputRng As Range, OutRng As Range
    Dim outStr As String
    Dim xTitleId As String
    xTitleId = "KutoolsforExcel"
    Set InputRng = Application.Selection
    Set InputRng = Application.InputBox("Select source range:", xTitleId, InputRng.Address, Type:=8)
    Set OutRng = Application.InputBox("Output to (single cell):", xTitleId, Type:=8)
    outStr = ""
    For Each rng In InputRng
        If Len(Trim(rng.Value)) > 0 Then
            If outStr = "" Then
                outStr = rng.Value
            Else
                outStr = outStr & ", " & rng.Value
            End If
        End If
    Next rng
    OutRng.Value = outStr
End Sub

3. 點擊執行按鈕,或按下 F5 執行 VBA,螢幕上將立即顯示對話方塊,讓您選取要轉換的列。請參閱截圖:

VBA 程式碼用於選取要轉換的直欄清單

4. 點擊確定後,將彈出另一個對話方塊供您選取儲存格。請參閱截圖:

VBA 程式碼用於選取放置結果的儲存格

5. 點擊確定後,列中的所有值將立即轉換為儲存格內的逗號分隔清單。

使用 VBA 程式碼將直欄清單轉換為以逗號分隔的清單


結論:

  • 為兼顧簡便與效能,請於 Excel 2019/365 中使用 TEXTJOIN 函數。
  • 為確保相容性,CONCAT 與 IF 的陣列方法適用於所有版本。
  • 若為一次性任務且不想使用公式,Kutools 提供一鍵搞定的解決方案。
  • 若需實現完整自動化或處理複雜規則,VBA 巨集最具彈性。

根據您的 Excel 版本、任務頻率,以及對增益集或 VBA 的熟悉程度,選擇最適合的方法。掌握這些最佳化技巧後,將任何欄位轉換為整潔的逗號分隔清單將變得輕而易舉!若您想深入探索更多 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 天完整功能試用— 無需註冊,無需信用卡
  • 超值之選— 比單獨購買各增益集更省費用