在 Excel 中根據群組將多行合併到一個單元格的 3 種方法
Author: Sun Last Modified: 2025-08-06
在 Excel 中處理結構化數據集時,根據群組將多行數據合併到單個單元格是一種常見的需求。例如,您可能希望將與同一類別相關的所有名稱合併到一個單元格中。本文提供了使用各種方法和針對不同專業水平及使用案例進行優化的逐步指導。
使用公式和篩選功能進行群組和合併
您可以使用 Excel 的公式以及「篩選」功能根據某一列來合併行。請按照以下步驟操作。
注意:確保您的數據已按群組列排序,例如本例中的「班級」。
- 在新列中輸入以下公式以合併名稱並按下「Enter」鍵。向下拖動以應用於整個列範圍。
=IF(A2=A1,C1&", "&B2,B2)
- 在新列中輸入以下公式,按下「Enter」鍵並向下拖動公式。
=IF(A2<>A3,"Last","")
- 選擇包括輔助列在內的所有數據範圍。選擇「數據」>「篩選」以向數據添加篩選圖標。
- 點擊最後一個輔助列中的 「篩選圖標」,僅勾選「最後」複選框,然後點擊「確定」。
現在結果如下所示,如果不再需要最後一個輔助列,可以將其刪除。
輕鬆使用 Kutools for Excel 進行群組和合併
「Kutools for Excel」提供了一個簡單且高效的解決方案——「高級合併行」,只需幾次點擊即可將分組的行合併到單個單元格中。它會自動添加自訂分隔符,如逗號、空格或換行符,以滿足不同的數據展示需求。
Kutools for Excel - 包含超過 300 種 Excel 必備工具。永久免費享受 AI 功能!立即下載!
- 突出顯示包含數據的單元格。導航至「Kutools」>「合併與分割」>「高級合併行」。
- 在「高級合併行 」窗口中,請按以下配置:
- 點擊要基於其合併行的列,並將其設置為「主鍵」。
- 對於要合併的列,例如本例中的「名稱」列,在該列的「操作」欄位下的「合併」部分指定分隔符。
- 點擊「確定」按鈕。
結果:Kutools 將根據群組自動將數據合併到具有特定分隔符的單個單元格中。
注意:在應用此工具之前,建議創建原始數據的副本。
Kutools for Excel - 超過 300 種必備工具,讓 Excel 功能更強大。永久免費享受 AI 功能!立即獲取
使用 VBA 代碼進行群組和合併
您還可以使用 VBA 根據群組動態合併行。
- 按下 「Alt」 + 「F11」鍵以啟用「Microsoft Visual Basic for Applications」窗口。
- 在代碼編輯器中,點擊「工具」>「引用」以啟用「引用」對話框,勾選「Microsoft Scripting Runtime」並保存更改。
- 轉到「插入」>「模塊」並將以下 VBA 代碼粘貼到模塊窗口中。 VBA:根據群組將行合併到一個單元格中
Sub ConcatenateCellsIfSameValues() 'UpdatebyExtendoffice20180201 Dim I As Long Dim J As Long Dim xRg As Range Dim xRgKey As Range Dim xRgVal As Range Dim xStr As String Dim xDic As New Dictionary On Error Resume Next Set xRg = Application.InputBox("Select data range", "KuTools for Excel", Selection.Address, , , , , 8) If xRg Is Nothing Then Exit Sub Set xRgKey = Application.InputBox("Select key column", "KuTools for Excel", xRg.Columns(1).Address, , , , , 8) If xRgKey Is Nothing Then MsgBox "Key column cannot be empty", vbInformation, "KuTools for Excel" End If Set xRgVal = xRg(1).Offset(, 1).Resize(xRg.Rows.Count, xRg.Columns.Count - 1) For I = 1 To xRgKey.Count If I > xRgKey.Count Then Exit For xStr = "" For J = 1 To xRgVal.Columns.Count xStr = xStr & " " & xRgVal(I, J) Next If xDic.Exists(xRgKey(I).Text) Then xDic(xRgKey(I).Text) = xDic(xRgKey(I).Text) & xStr xRgKey(I).EntireRow.Delete I = I - 1 Else xDic.Add xRgKey(I).Text, xStr End If Next For I = 1 To xRgVal.Count xRgVal(I).Value = xDic(xRgKey(I).Text) Next End Sub
- 按下「F5 」鍵運行腳本,並按照提示選擇您的數據範圍並指定主鍵列。
結果如下所示:
在 Excel 中處理數據時,群組和合併單元格是一項常見但複雜的任務。根據您的需求和工具,您可以選擇多種方法來實現這一目標。根據您的具體需求和偏好選擇最合適的工具和方法,讓您的 Excel 工作更加高效便捷。如果您有興趣探索更多 Excel 技巧, 我們的網站提供了數千個教程,幫助您掌握 Excel。
演示:使用 Kutools for Excel 的高級合併行進行群組和合併
Kutools for Excel:超過 300 種實用工具任您使用!永久免費享受AI功能!立即下載!
最佳 Office 辦公效率工具
🤖 | Kutools AI Aide:徹底革新數據分析,基於智能執行|生成程式碼|創建自訂公式|分析數據並生成圖表|調用 Kutools Functions… |
熱門功能:查找、選取項目的背景色或標記重複值 | 刪除空行 | 合併列或單元格且不丟失資料 | 四捨五入... | |
高級 LOOKUP:多條件查找|多值查找|多表查找|模糊查找... | |
高級下拉列表:快速創建下拉列表 | 關聯下拉列表 | 多選下拉列表 ... | |
列管理器: 添加指定數量的列 | 移動列 | 切換隱藏列的可見狀態 | 區域與列比較 ... | |
精選功能:網格聚焦 | 設計檢視 | 增強編輯欄 | 工作簿及工作表管理器 | 資源庫 (自動文本) | 日期提取器 | 合併資料 | 加密/解密儲存格 | 按清單發送電子郵件 | 超級篩選 | 特殊篩選(篩選粗體/傾斜/刪除線 ...)... | |
前15 大工具集:12 款文本工具(添加文本,刪除特定字符,...)|50+ 種圖表 類型(甘特圖,...)|40+ 實用 公式(基於生日計算年齡,...)|19 款插入工具(插入QR码,按路徑插入圖片,...)|12 款轉換工具(金額轉大寫,匯率轉換,...)|7 款合併和分割工具(高級合併行,分割儲存格,...)| ...以及更多 |
使用 Kutools 支援你的語言——支援英語、西班牙語、德語、法語、中文及40 多種語言!
利用 Kutools for Excel 大幅提升你的 Excel 技能,感受前所未有的高效體驗。 Kutools for Excel 提供超過300 項高級功能,助你提升效率並保存時間。 點此查看你最需要的功能...
Office Tab 為 Office 帶來標籤式介面,讓你的工作更加輕鬆
- 啟用 Word、Excel、PowerPoint 的標籤式編輯和閱讀功能
- 在同一個視窗的標籤中打開和創建多個文件,而不是在新窗口中分開開啟。
- 可提升你50% 的工作效率,每天為你大量減少滑鼠點擊次數!