Note: The other languages of the website are Google-translated. Back to English

如何基於一個列的值快速合併行,然後在Excel中進行一些計算?

例如,您有一系列數據,並且一列具有重複項,現在您想以A列(具有重複項)為基礎合併行,然後根據合併的行對另一列進行一些計算,如屏幕截圖所示:

在Excel中,沒有一種快速的方法可以基於一個列的值合併行,但是在這裡我介紹
技巧,可以幫助您合併重複的行,然後對另一列求和或進行其他計算。


箭頭藍色右氣泡 基於一列合併行,然後使用VBA對值求和

有一個VBA代碼可以幫助您合併重複的行,然後對另一個列的值求和。

分頁瀏覽和編輯多個Excel工作簿/ Word文檔,例如Firefox,Chrome,Internet Explore 10!

您可能很熟悉在Firefox / Chrome / IE中查看多個網頁,並通過輕鬆單擊相應的選項卡在它們之間進行切換。 在此,Office選項卡支持類似的處理,使您可以在一個Excel窗口或Word窗口中瀏覽多個Excel工作簿或Word文檔,並通過單擊它們的選項卡輕鬆地在它們之間進行切換。 免費點擊 30-Office Tab 試用版!

優秀

1。 按 F11 + Alt 啟用鍵 Microsoft Visual Basic for Applications 窗口,然後單擊 插入 > 模塊 並將以下VBA代碼複製並粘貼到新 模塊 窗口。

VBA:基於一個列值合併行

Sub MG30Nov12()
'Updateby20150519
Dim Rng As Range
Dim InputRng As Range
Dim nRng As Range
Set InputRng = Application.Selection
Set InputRng = Application.InputBox("Range :", xTitleId, InputRng.Address, Type:=8)
Set InputRng = InputRng.Parent.Range(InputRng.Columns(1).Address)
With CreateObject("scripting.dictionary")
.CompareMode = vbTextCompare
For Each Rng In InputRng
    If Not .Exists(Rng.Value) Then
        .Add Rng.Value, Rng.Offset(, 1)
    Else
        .Item(Rng.Value).Value = .Item(Rng.Value).Value + Rng.Offset(, 1)
            If nRng Is Nothing Then
                Set nRng = Rng
            Else
                Set nRng = Union(nRng, Rng)
            End If
    End If
Next
If Not nRng Is Nothing Then
    nRng.EntireRow.Delete
End If
End With
End Sub

2。 按 F5 或點擊 按鈕以運行VBA,並彈出一個對話框,用於選擇要工作的數據范圍。 看截圖:

doc合併基於一列的列3

3.選擇工作範圍後,單擊 OK。 現在,數據已被第一列合併,並在第二列中求和。

doc合併基於一列的列4

備註:此VBA代碼僅在基於第一列合併第二列中的值時才能正確工作。


箭頭藍色右氣泡 基於一列合併行,然後使用“高級合併行”對值求和

如果您不熟悉VBA代碼,則可以使用 高級合併行 第三方插件工具的功能– Excel的Kutools 輕鬆快速地合併重複行,然後將值累加到另一列中。

免費安裝 Kutools for Excel,請執行以下操作:

1.選擇要使用的數據,然後單擊 庫工具 > 合併與拆分 > 高級合併行。 看截圖:

doc高級合併行1

2.然後在彈出對話框中,選擇要合併其他列的列,然後單擊 鍵,然後單擊另一列,然後單擊 計算 然後選擇 總和.

尖端:如果您選擇的範圍包含標題,請檢查 我的數據有標題,並檢查 使用格式化的值 合併後將保留格式。

doc合併基於一列的列6

3。 然後點擊 Ok。 現在,已經根據主列合併了數據,並對另一個進行了匯總。 看截圖:

doc合併基於一列的列7


箭頭藍色右氣泡 基於一列合併行,然後使用“高級合併行”對其他列執行不同的操作。

高級合併行 之所以功能強大,是因為它不僅可以合併一列中的重複行,然後對另一列求和,還可以合併一列中的重複行,然後對其他列進行不同的操作。

假設我有一系列數據,如下面的屏幕快照所示,並且我想同時結合B列中的值和C列中基於A列的值之和。
doc合併基於一列的列8

免費安裝 Kutools for Excel,請執行以下操作:

1.選擇數據范圍,然後單擊 庫工具 > 合併與拆分 > 高級合併行。 看截圖:

doc高級合併行1

2。 在裡面 根據列合併行 對話框,如下所示:

(1)單擊要合併的列,然後單擊 首要的關鍵;

doc合併基於一列的列10

(2)單擊要合併數據的列,然後單擊 結合,然後從列表中選擇一個所需的分隔符;

doc合併基於一列的列11

(3)單擊要對值求和的列,然後單擊 計算,然後選擇 總和.

doc合併基於一列的列12

3。 點擊 Ok。 現在您可以看到如下結果:

doc合併基於一列的列13

這款獨特的敏感免洗唇膜採用 Moisture WrapTM 技術和 Berry Mix ComplexTM 成分, 高級合併行 功能,您還可以根據一列合併行,然後對其他列進行計數,平均,保留第一個或最後一個數據。 


最佳辦公效率工具

Kutools for Excel 解決了你的大部分問題,並將你的生產力提高了 80%

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

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

  • 在Word,Excel,PowerPoint中啟用選項卡式編輯和閱讀,發布者,Access,Visio和Project。
  • 在同一窗口的新選項卡中而不是在新窗口中打開並創建多個文檔。
  • 將您的工作效率提高 50%,每天為您減少數百次鼠標點擊!
officetab底部
按評論排序
留言 (3)
還沒有評分。 成為第一位評論!
網站主持人對此評論進行了最小化
嘿,您的模塊過去也適用於大表(例如,您想根據 Year 進行總結,但您有 Sales 1、Sales 2、Sales 3....等)。 但現在它只獲得了正確的第一列(銷售額 1),並且所有其他列都沒有正確匯總。 你有什麼改變嗎?
謝謝!
網站主持人對此評論進行了最小化
嗨,IK,也許你可以使用 sumproduct 函數 SUMPRODUCT((A2:A10=”Pen”)*(B2:E10)) 來一一計算。 A2:A10 是包含查找值的範圍,pen 是標準,B2:E10 是要根據標準求和的範圍。
網站主持人對此評論進行了最小化
我有相同/相似的問題。 我正在嘗試對參考單元格右側的所有列求和,但它只對一個列求和。 我如何才能將所有這些單獨加起來?
這裡還沒有評論
留下你的意見
以訪客身份發帖
×
評價此帖子:
0   字符
推薦地點

關注我們

版權所有©2009 - 萬維網。extendoffice.com。 | 版權所有。 供電 ExtendOffice。 |
Microsoft和Office徽標是Microsoft Corporation在美國和/或其他國家的商標或註冊商標。
受Sectigo SSL保護