跳至主要内容

按组在Excel中求和值

Author: Xiaoyang Last Modified: 2025-05-07

有时,您可能需要根据表格中的组来对值进行求和。例如,我有一个产品列表及其对应的数量在另一列中,现在我想获取每个产品的总金额,如下截图所示。本教程将介绍一些用于解决此任务的Excel公式。

doc-sum-by-group-1


按组求和值 – 原始数据表中的小计

以下是基于组在Excel中求和值的一般语法:

=IF(组名=上方单元格组名, "" ,SUMIF(组范围,组名,求和范围))
  • 组名: 包含要汇总的组名称的单元格;
  • 上方单元格组名: 组名称上方的单元格;
  • 组范围: 包含组名称的单元格范围;
  • 求和范围: 与指定组名称相对应、需要一起求和的单元格范围。

如果数据按照分组列排序,相同的产品排列在一起,如下截图所示。为了按组对数据进行小计,您可以根据IF和SUMIF函数创建公式。

doc-sum-by-group-2

1. 请将以下公式复制并粘贴到数据旁边的一个空白单元格中:

=IF(A2=A1,"",SUMIF($A$2:$A$13,A2,$B$2:$B$13))
  • 注意:在公式中:
  • A1是标题单元格,A2是包含要使用的产品名称的第一个单元格;
  • A2:A13是要基于其进行求和的产品名称列表;
  • B2:B13是要获取小计的列数据。

2. 然后,向下拖动填充柄以应用该公式到所需的单元格,并且会根据每个产品名称计算小计,见截图:

doc-sum-by-group-3


公式的解释:

=IF(A2=A1,"",SUMIF($A$2:$A$13,A2,$B$2:$B$13))

  • SUMIF($A$2:$A$13,A2,$B$2:$B$13): 此SUMIF函数仅当范围A2:A13中的对应值等于条件A2时,才会对范围B2:B13中的值进行求和。
  • IF(A2=A1,"",SUMIF($A$2:$A$13,A2,$B$2:$B$13)): 此IF函数检查列A中的每个值是否与其上方单元格的值相同。例如,如果单元格A2等于单元格A1,则返回空(“”),如果不匹配,则返回SUMIF函数的结果。

按组求和值 – 在其他位置的小计

如果每组的值没有排列在一起而是随机分布在列中,为了根据组或类别对匹配的值进行求和,您应该从产品名称中提取每个组名称,然后根据此组名称获取小计,如下截图所示。

doc-sum-by-group-4

1. 首先,请使用以下数组公式提取唯一的组名称,然后同时按下Ctrl + Shift + Enter键以获得第一个结果。

=INDEX($A$2:$A$13,MATCH(0,COUNTIF($D$1:D1,$A$2:$A$13),0))
  • 注意:在公式中:
  • A2:A13是从中提取所有唯一值的单元格范围;
  • D1是输入公式上方的单元格。

2. 然后,选择公式单元格并向下拖动填充柄直到显示所有产品名称,见截图:

doc-sum-by-group-5

3. 现在,您可以根据已提取的组名称对值进行求和。在这种情况下,这里将使用SUMIF函数,请在空白单元格中输入以下公式,在本例中,我将其放入E2单元格中。

=SUMIF($A$2:$A$13,D2,$B$2:$B$13)

4. 然后,向下拖动填充柄以复制此公式以返回其他组的总计订单,见截图:

doc-sum-by-group-6


相关功能:

  • SUMIF:
  • SUMIF函数可以帮助根据一个条件对单元格进行求和。
  • IF:
  • IF函数测试特定条件并返回您为TRUE或FALSE提供的相应值。

更多文章:

  • 按账龄对发票金额进行小计
  • 在Excel中,根据账龄对发票金额进行小计(如下截图所示)可能是一个常见的任务,本教程将展示如何使用普通的SUMIF函数按账龄对发票金额进行小计。
  • 对最小或底部N个值求和
  • 在Excel中,使用SUM函数对一系列单元格进行求和很容易。有时,您可能需要对数据范围内的最小或底部3、5或n个数字进行求和(如下截图所示)。在这种情况下,SUMPRODUCT与SMALL函数结合可以帮助您在Excel中解决这个问题。
  • 根据条件对最小或底部N个值求和
  • 在之前的教程中,我们讨论了如何对数据范围内的最小n个值进行求和。在本文中,我们将执行更高级的操作——根据一个或多个条件对最低的n个值进行求和。

最佳的办公生产力工具

Kutools for Excel - 助您脱颖而出

🤖 Kutools AI 助手:基于以下功能彻底改变数据分析方式:智能执行   |  生成代码  |  创建自定义公式  |  分析数据并生成图表  |  调用Kutools函数
热门功能查找、高亮或标记重复项  |  删除空行  |  合并列或单元格而不丢失数据  |  四舍五入无需公式 ...
超级VLookup多条件  |  多值  |  跨多个工作表  |  模糊查找...
高级下拉列表简易下拉列表  |  级联下拉列表  |  多选下拉列表...
列管理器添加指定数量的列  |  移动列  |  切换隐藏列的可见状态  比较列以 选择相同和不同的单元格 ...
精选功能网格聚焦  |  设计视图  |  增强编辑栏  |  工作簿与工作表管理器 | 资源库(自动文本)  |  日期提取  |  合并数据  |  加密/解密单元格  |  按列表发送电子邮件  |  超级筛选  |  特殊筛选(筛选粗体/斜体/删除线...) ...
排名前15的工具集12个 文本 工具添加文本删除特定字符 ...)  |  50多种 图表 类型甘特图 ...)  |  40多种实用 公式基于生日计算年龄 ...)  |  19个 插入 工具插入二维码从路径插入图片 ...)  |  12个 转换 工具小写金额转大写汇率转换 ...)  |  7个 合并与拆分 工具高级合并行分割Excel单元格 ...)  |  ... 还有更多

Kutools for Excel拥有超过300种功能,确保您需要的功能只需一键即可实现...


Office Tab - 在Microsoft Office(包括Excel)中启用标签式阅读和编辑

  • 一秒内切换数十个打开的文档!
  • 每天为您减少数百次鼠标点击,告别鼠标手。
  • 在查看和编辑多个文档时,您的工作效率将提高50%。
  • 为Office(包括Excel)带来高效的标签页,就像Chrome、Edge和Firefox一样。