如何基於Excel中的組將行連接到一個單元格中?
這是兩列的範圍,一列是班級列表,另一列是學生姓名列表。 如您所見,有些學生在同一堂課,有些則不在。 現在,我想將同一班級的學生連接到一個單元格中,如下面的屏幕截圖所示,如何在Excel中快速處理它?
用公式和過濾器功能分組和連接
在Excel中,您可以將公式應用於基於一列的串聯行,然後使用“篩選器”功能僅顯示結果。
備註:在執行以下步驟之前,您需要按類對數據進行排序。
1.在數據范圍旁邊的空白單元格中,例如C13,鍵入此公式 =IF(A13=A12,C12&", "&B13,B13), 按 Enter 鍵,然後拖動填充手柄將公式填充到單元格中。
在公式中,A13是“類別”列中的第一個數據,B13是“名稱”列中的第一個數據,“,”是用於分隔連接內容的分隔符。
2.然後在下一列D13中鍵入此公式 =IF(A13<>A14,"Last","") ,然後向下拖動填充手柄以將公式應用於所需的單元格。
3.現在選擇所有數據范圍,包括公式,然後單擊 數據 > Filter 加上 Filter icons 數據。
4。 點擊 Filter icon 在最後一個公式標題中,檢查 Last 僅從下拉列表中選中復選框,然後單擊 OK.
現在結果顯示如下,如果不需要,您可以刪除最後一個幫助器列。
分組並連接VBA代碼
這是一個VBA代碼,也可以處理此工作。
1。 按 Alt + F11 啟用 Microsoft Visual Basic for Applications 窗口。
2.然後在窗口中,單擊 Tools > References 啟用 References 對話框,然後檢查 Microsoft Scripting Runtime。 看截圖:
3。 點擊 OK,然後點擊 Insert > Module 在VBA窗口中,然後將以下VBA代碼複製並粘貼到 Module 腳本。 看截圖:
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
4。 按 F5 鍵,然後在彈出的對話方塊中選擇您使用的資料範圍。
5。 點擊 OK 選擇您想要分組的關鍵列。
6。 點擊 OK,現在結果如下圖所示:
分組並連接“高級合併行”
這是一個實用程式 Excel的Kutools, Advanced Combine 行,它可以合併行或根據 Excel 中的關鍵列進行計算。
安裝後 Kutools for Excel,請執行以下操作:(立即免費下載Kutools for Excel!)
1. 選擇您使用的資料範圍並點選 Kutools > 合併與拆分 > 高級合併行.
2。 在裡面 Advanced Combine Rows 視窗中,選擇要合併行的基礎列,然後按一下 Primary Key 將其設為關鍵列。
3.選擇需要合併的列,點選 Combine,然後選擇一個用來分隔組合內容的分隔符號。
4。 點擊 Ok。 結果如下圖所示:
備註:在應用該實用程式之前,您最好擁有原始資料的副本。
演示
最佳辦公生產力工具
🤖 | Kutools 人工智慧助手:基於以下內容徹底改變數據分析: 智慧執行 | 生成代碼 | 建立自訂公式 | 分析數據並產生圖表 | 呼叫 Kutools 函數... |
熱門特色: 尋找、突出顯示或識別重複項 | 刪除空白行 | 合併列或儲存格而不遺失數據 | 沒有公式的回合 ... | |
超級查詢: 多條件VLookup | 多值VLookup | 跨多個工作表的 VLookup | 模糊查詢 .... | |
高級下拉列表: 快速建立下拉列表 | 依賴下拉列表 | 多選下拉列表 .... | |
欄目經理: 新增特定數量的列 | 移動列 | 切換隱藏列的可見性狀態 | 比較範圍和列 ... | |
特色功能: 網格焦點 | 設計圖 | 大方程式酒吧 | 工作簿和工作表管理器 | 資源庫 (自動文字) | 日期選擇器 | 合併工作表 | 加密/解密單元格 | 按清單發送電子郵件 | 超級濾鏡 | 特殊過濾器 (過濾粗體/斜體/刪除線...)... | |
前 15 個工具集: 12 文本 工具 (添加文本, 刪除字符,...) | 50+ 圖表 類型 (甘特圖,...) | 40+ 實用 公式 (根據生日計算年齡,...) | 19 插入 工具 (插入二維碼, 從路徑插入圖片,...) | 12 轉化 工具 (數字到單詞, 貨幣兌換,...) | 7 合併與拆分 工具 (高級合併行, 分裂細胞,...) | ... 和更多 |
使用 Kutools for Excel 增強您的 Excel 技能,體驗前所未有的效率。 Kutools for Excel 提供了 300 多種進階功能來提高生產力並節省時間。 點擊此處獲取您最需要的功能...
Office選項卡為Office帶來了選項卡式界面,使您的工作更加輕鬆
- 在Word,Excel,PowerPoint中啟用選項卡式編輯和閱讀,發布者,Access,Visio和Project。
- 在同一窗口的新選項卡中而不是在新窗口中打開並創建多個文檔。
- 將您的工作效率提高 50%,每天為您減少數百次鼠標點擊!