Note: The other languages of the website are Google-translated. Back to English
登入  \/ 
x
or
x
註冊  \/ 
x

or

如何在Excel中基於重複項將多行合併為一行?

也許您有以下屏幕截圖數據,在“產品名稱”列A中,有一些重複項,現在您需要刪除列A中的重複項,但要合併列B中的相應值,請參見屏幕截圖:

doc-advanced-combine1 -2 doc-advanced-combine2

您有解決此任務的有效方法嗎?

使用VBA代碼將多個重複的行合併為一個

將多個重複的行合併為一個Kutools for Excel

合併多個重複的行並使用Kutools for Excel將值求和/取平均值

Office選項卡在Office中啟用選項卡式編輯和瀏覽,並使您的工作更加輕鬆...
Kutools for Excel解決了您的大多數問題,並使您的生產率提高了80%
  • 重用任何東西: 將最常用或最複雜的公式,圖表等添加到您的收藏夾中,並在將來快速重用它們。
  • 超過20種文字功能: 從文本字符串中提取數字; 提取或刪除部分文字; 將數字和貨幣轉換為英文單詞。
  • 合併工具:將多個工作簿和工作表合二為一; 合併多個單元格/行/列,而不會丟失數據; 合併重複的行和總和。
  • 分割工具:根據價值將數據分割成多個工作表; 一本工作簿可轉換為多個Excel,PDF或CSV文件; 一列到多列。
  • 跳過粘貼 隱藏/過濾的行; 計數與求和 按背景色; 向多個收件人批量發送個性化電子郵件。
  • 超級過濾器: 創建高級過濾方案並應用於任何工作表; 分類 按星期,日期,頻率等 篩選 用粗體,公式,註釋...
  • 超過300種強大的功能; 適用於Office 2007-2019和365; 支持所有語言; 在您的企業或組織中輕鬆部署。

箭頭藍色右氣泡使用VBA代碼將多個重複的行合併為一個


下面的VBA代碼可以幫助您根據列A的值合併重複的行,並且下面的代碼僅適用於兩列。 因此,如果您有兩列數據,那麼此代碼將為您提供幫助。

1。 按住 ALT + F11 鍵,然後打開 Microsoft Visual Basic for Applications窗口.

2。 點擊 插入 > 模塊,然後將以下代碼粘貼到 模塊窗口.

VBA代碼:將多行合併為一

Sub CombineRows()
'Update 20131202
Dim WorkRng As Range
Dim Dic As Variant
Dim arr As Variant
On Error Resume Next
xTitleId = "KutoolsforExcel"
Set WorkRng = Application.Selection
Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8)
Set Dic = CreateObject("Scripting.Dictionary")
arr = WorkRng.Value
For i = 1 To UBound(arr, 1)
    xvalue = arr(i, 1)
    If Dic.Exists(xvalue) Then
        Dic(arr(i, 1)) = Dic(arr(i, 1)) & " " & arr(i, 2)
    Else
        Dic(arr(i, 1)) = arr(i, 2)
    End If
Next
Application.ScreenUpdating = False
WorkRng.ClearContents
WorkRng.Range("A1").Resize(Dic.Count, 1) = Application.WorksheetFunction.Transpose(Dic.keys)
WorkRng.Range("B1").Resize(Dic.Count, 1) = Application.WorksheetFunction.Transpose(Dic.items)
Application.ScreenUpdating = True
End Sub

3。 然後按 F5 鍵,並彈出一個提示框,提醒您選擇需要組合的範圍。 看截圖:

doc-advanced-combine3

4。 然後點擊 OK,則B列中的值已合併為一個記錄,並用空格分隔。

doc-advanced-combine4

筆記:

1.此代碼可以銷毀原始數據,使用時最好先備份數據。

2.此代碼僅適用於兩列,如果您有兩列以上,則此代碼將僅合併前兩列並刪除其他列數據。 使用此代碼時,請務必謹慎。


箭頭藍色右氣泡將多個重複的行合併為一個Kutools for Excel

既然上面的代碼有一定的局限性和風險,是否有方便而安全的方法來完成這項工作? 用 Kutools for Excel高級合併行 實用程序,您可以快速刪除您所基於的列中的多個重複行,然後合併或對其他記錄進行一些計算到適當的單元格中。

Kutools for Excel 包括300多個便捷的Excel工具。 30天免費試用,不受限制。 立即獲取.

安裝Kutools for Excel之後,請執行以下操作:

1。 選擇要合併重複項的範圍數據。

doc-advanced-combine5

2。 然後點擊 庫工具 > 內容轉換器 > 高級合併行。 看截圖:

doc-advanced-combine6

3。 在 高級合併行 對話框中,選擇列名稱作為要基於其組合值的鍵列,然後單擊“確定”。 關鍵列。 看截圖:

doc-advanced-combine7

4。 然後繼續單擊您需要將其值合併到一條記錄中的列,然後單擊 合併作業 並選擇 僅與分隔符結合,然後選擇一個分隔符,您需要從右邊的列表中分隔出組合的值。 看截圖:

doc-advanced-combine8

5。 完成設置後,單擊 OK,您的數據將根據鍵列進行合併,並以分隔符分隔。

doc-advanced-combine9

備註: 如果您不需要為其餘列設置操作,則只需保留默認狀態即可。


箭頭藍色右氣泡合併多個重複的行並使用Kutools for Excel將值求和/取平均值

有了這個多功能 高級合併行 實用程序,您可以合併重複的行,並對值進行一些計算。

1。 選擇要合併重複項的範圍數據。

2。 去的 高級合併行 對話框;

  • (1.)選擇一個列名作為要基於其計算其他列值的鍵列,然後單擊 關鍵列;
  • (2.)選擇您需要對值進行一些計算的列,然後單擊 合併作業 > 合併計算,然後選擇一種所需的計算類型,在這種情況下,我選擇 總和。 看截圖:

doc-advanced-combine10

3。 如果您不需要為其餘列設置操作,只需保持默認狀態,然後單擊 OK,則A列中的重複值將被合併,並且B列中其對應的值將相加。 查看屏幕截圖:

doc-advanced-combine11 -2 doc-advanced-combine12

筆記:

1.如果您檢查 我的數據有標題 選項,應用此實用程序時將忽略範圍的標題(第一行)。

2. 使用格式化的值:合併重複的單元格後,將保留值的格式。

3.此實用程序不可用於過濾數據。

單擊以了解有關此高級合併行功能的更多信息。


相關文章:

合併重複的行並求和


最佳辦公效率工具

Kutools for Excel解決了您的大多數問題,並使您的生產率提高了80%

  • 重用: 快速插入 複雜的公式,圖表 以及您以前使用過的任何東西; 加密單元 帶密碼 創建郵件列表 並發送電子郵件...
  • 超級公式欄 (輕鬆編輯多行文本和公式); 閱讀版式 (輕鬆讀取和編輯大量單元格); 粘貼到過濾範圍...
  • 合併單元格/行/列 不會丟失數據; 拆分單元格內容; 合併重複的行/列...防止細胞重複; 比較範圍...
  • 選擇重複或唯一 行; 選擇空白行 (所有單元格都是空的); 超級查找和模糊查找 在許多工作簿中; 隨機選擇...
  • 確切的副本 多個單元格,無需更改公式參考; 自動創建參考 到多張紙; 插入項目符號,複選框等...
  • 提取文字,添加文本,按位置刪除, 刪除空間; 創建和打印分頁小計; 在單元格內容和註釋之間轉換...
  • 超級濾鏡 (將過濾方案保存並應用於其他工作表); 高級排序 按月/週/日,頻率及更多; 特殊過濾器 用粗體,斜體...
  • 結合工作簿和工作表; 根據關鍵列合併表; 將數據分割成多個工作表; 批量轉換xls,xlsx和PDF...
  • 超過300種強大功能。 支持Office / Excel 2007-2019和365。支持所有語言。 在您的企業或組織中輕鬆部署。 完整功能30天免費試用。 60天退款保證。
kte選項卡201905

Office選項卡為Office帶來了選項卡式界面,使您的工作更加輕鬆

  • 在Word,Excel,PowerPoint中啟用選項卡式編輯和閱讀,發布者,Access,Visio和Project。
  • 在同一窗口的新選項卡中而不是在新窗口中打開並創建多個文檔。
  • 每天將您的工作效率提高50%,並減少數百次鼠標單擊!
officetab底部
Say something here...
symbols left.
You are guest
or post as a guest, but your post won't be published automatically.
Loading comment... The comment will be refreshed after 00:00.
  • To post as a guest, your comment is unpublished.
    Ashley · 3 years ago
    I have used the code above successfully in the past however today, it is deleting column B. Looks like it's just removing duplicates...not sure what the issue is.

    Sample Data
    Reece, Ashley G01-Registered-UWG
    Reece, Chris G02-Registered-KSU
    Reece, Chris G03-Dropped-KSU
    Reece, Jayden G02-Registered-UNG
    Reece, Jayden G02-Withdrawn-UNG
  • To post as a guest, your comment is unpublished.
    Muveen · 3 years ago
    I have in column A

    1 Cast
    2 Crew
    3 Hiring
    4 Cast
    5 Hiring
    6 Crew

    I need these unique CAST CREW AND HIRING in another column without delete in column A entries.

    Ex: I need (after formula)

    1 Cast
    2 Crew
    3 Hiring

    Is it possible by formula?
  • To post as a guest, your comment is unpublished.
    Ilaiyaraja · 5 years ago
    Above Macro only Combine the limited cell(e.g 20 cells) in b column. How to Combine more cells
    • To post as a guest, your comment is unpublished.
      NewYears1978 · 2 months ago
      Same - 2021 and this still only works if you have like 20 rows...
  • To post as a guest, your comment is unpublished.
    David Greene · 7 years ago
    I've found that the "Combine multiple duplicate rows and sum/average the values" feature within KUTools does not work if the numbers in the row have a comma or period. This makes the tool unusable for combining and summing currency fields (which is why I tried the product in first place). I'm currently using the trial version which states that it is full-functioned; is it possible that this works in the paid version?
    • To post as a guest, your comment is unpublished.
      NewYears1978 · 2 months ago
      Same here. I was about to purchase because the tools are very nice, but figured I would try it first. Combine never works. I tried it for about 3 weeks now and it always locks up. No matter the power of my computer (ran on my at home powerhouse computer, same issue)

      I kept cutting down to less and less data to see if it would work but it still would not.

      The last one I tried was 4 columns and 100k rows and it still locked up. Not very useful unless you have like < 100 rows or something.
    • To post as a guest, your comment is unpublished.
      JP · 2 months ago
      Same here, I filtered my data all the way down to 4 columns and 100k rows and it still work not work. I have tried this for 3 weeks now and unable to successfully complete my task. Kutools will only work if you have very few rows.
    • To post as a guest, your comment is unpublished.
      Admin-jay · 7 years ago
      [quote name="David Greene"]I've found that the "Combine multiple duplicate rows and sum/average the values" feature within KUTools does not work if the numbers in the row have a comma or period. This makes the tool unusable for combining and summing currency fields (which is why I tried the product in first place). I'm currently using the trial version which states that it is full-functioned; is it possible that this works in the paid version?[/quote]
      Sorry, we will fix it in next version.