如何在 Excel 中合并重复行并对值求和:4 种合适的方法
方法 1 – 使用删除重复工具和 SUMIF 函数
步骤:
- 使用CTRL+C或从功能区复制客户列(确保从标题客户开始复制)。
- 选择要粘贴的任何单元格(此处为单元格F4)>>转到主页选项卡>>单击粘贴按钮。
- 选择复制的单元格时,转到数据选项卡>>数据工具组>>删除重复项工具。
- 将出现删除重复项对话框。确保选中我的数据有标题复选框。选择列出的列(在我们的示例中为客户),然后按确定。
- 重复项已被删除。
- 在客户旁边创建一个新标题,将其命名为总应付款 总和。
- 选择新标题下的单元格 G5 并使用 SUMIF 函数编写以下函数。
=SUMIF($C$5:$C$14,F5,$D$5:$D$14)
指根据C$5:C$14范围内名称对应的D$5:D$14中的数据计算F5的求和值强>。您可以相应地调整公式。
- 通过将下面的填充柄拖动到“客户”列结束的单元格,将此公式复制到接下来的几个单元格。
该公式将被复制到下面的所有单元格,您将能够对 Excel 中重复行的值求和。
方法 2 – 使用合并工具合并重复行并对值求和
步骤:
- 将初步数据中的标题复制并粘贴到所需位置。
- 选择第一个复制的标题下方的单元格。
- 转到数据选项卡>>数据工具组>>合并工具。
- 将出现合并对话框。在函数:下拉框中选择求和(它应该已经在那里)。标记左列复选框。
- 单击参考框,然后使用鼠标选择没有标题的单元格(这样做非常重要),或者您可以手动输入单元格范围(不要忘记使用 $ 使单元格绝对化 - 即在我们的示例中它是$C$5:$D$14。你知道吗?使用鼠标,这样excel就会自动输入)。单击确定。
通过合并重复行,在 Excel 中成功获取总和值。
注意:
使用此工具可以组合来自多个工作表,甚至来自任意数量的不同工作簿的数据。
方法 3 – 使用数据透视表功能
步骤:
- 选择一个空单元格,我们将在其中创建数据透视表。
- 转到插入选项卡>>表格组>>数据透视表工具。
- 将出现表或范围中的数据透视表对话框。对于要在表/范围:文本框中分析的数据,请使用鼠标选择范围,就像合并一样,但带有标题。这次在框中,工作表名称的新术语也将显示,因为数据透视表也可用于从不同工作表获取数据。就像在我们的示例中一样,它是'使用数据透视表'!$C$4:$D$14 用于在C4到D14中选择单元格>使用数据透视表 工作表。
- 要输入到当前工作表中的单元格,请选择现有工作表,然后在该位置用鼠标选择一个单元格或写入“工作表名称”!单元格 ID。确保单元格绝对。 '使用数据透视表'!$F$4 用于在使用数据透视表中的单元格F4处输入值 >工作表。单击确定。
- 创建数据透视表。
- 转到右侧的数据透视表字段窗格。
- 拖动将客户字段放入行区域,并将应付金额放入值区域。
获取所有客户的会费总和以及数据透视表中的姓名。
方法 4 – 应用 VBA 代码合并重复行和求和值
步骤:
- 转到开发人员选项卡>> Visual Basic工具。
- VB 编辑器窗口将打开。
- 转到插入选项卡>>模块选项。
- 将创建一个名为 Module1 的新模块。
- 双击Module1并在代码窗口中编写以下代码。
Sub Sum_Duplicate_Row_Values()
Dim r As Range
Dim x As Variant
Dim a As Variant
On Error Resume Next
BoxTitle = "Combine Duplicate Rows & Sum Values"
Set r = Application.Selection
Set r = Application.InputBox("Range", BoxTitle, r.Address, Type:=8)
Set x = CreateObject("Scripting.Dictionary")
a = r.Value
For i = 1 To UBound(a, 1)
x(a(i, 1)) = x(a(i, 1)) + a(i, 2)
Next
Application.ScreenUpdating = False
r.ClearContents
r.Range("A1").Resize(x.Count, 1) = Application.WorksheetFunction.Transpose(x.keys)
r.Range("B1").Resize(x.Count, 1) = Application.WorksheetFunction.Transpose(x.items)
Application.ScreenUpdating = True
End Sub
- 按Ctrl + S。
- 将出现一个 Microsoft Excel 对话框。
- 单击否按钮。
- 将出现另存为对话框。
- 选择另存为类型:选项作为.xlsm文件,然后单击保存按钮。
- 关闭VB编辑器并转到开发人员选项卡>>宏工具。
- 将出现宏窗口。
- 选择Sum_Duplicate_Row_Values宏,然后单击运行按钮。
- 将出现创建的合并重复行和求和值对话框。
- 参考范围文本框中的C4:D14单元格,然后单击确定按钮。
在现有列中获得您想要的结果。