在 Excel 中按组汇总值(类似于group by分组求和)

0    43    1

Tags:

👉 本文共约2073个字,系统预计阅读时间或需8分钟。

前言

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

img


按组汇总值 - 原始数据表中的小计

这里根据 Excel 中的组对值求和的通用语法应该是这样的:

  • group_name:要求和的组名所在的单元格;
  • cell_above_group_name:组名上方的单元格;
  • group_range:单元格范围包含组名;
  • sum_range: 指定组名对应的单元格范围求和。

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

img

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

本人提供Oracle、MySQL、PG等数据库的培训和考证业务,私聊QQ646634621或微信db_bao,谢谢!
  • 备注: 在公式:
  • A1 是标题单元格,并且 A2 是包含您要使用的产品名称的第一个单元格;
  • A2:A13 该列表是否包含您要基于的产品名称;
  • B2:B13 是要获取小计的列数据。

2. 然后,将填充手柄向下拖动到要使用此公式的单元格,并根据每个产品名称计算小计,请参见屏幕截图:

img


公式说明:

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

  • SUMIF($A$2:$A$13,A2,$B$2:$B$13):如果范围 A2:A13 中的相应值等于条件 A2,则此 SUMIF 函数将仅对范围 B13:B2 中的值求和。
  • IF(A2=A1,"",SUMIF($A$2:$A$13,A2,$B$2:$B$13)):此 IF 函数检查 A 列中的每个值,如果其值与上述单元格中的值相同。 例如,如果单元格值 A2 等于单元格 A1,则不返回任何内容(“”),如果不匹配,则返回 SUMIF 函数的结果。

按组汇总值 - 另一个位置的小计

如果每组的值没有排列在一起,在列中随机列出,要根据组或类别对匹配值求和,您应该从产品名称中提取每个组名,然后根据该组名得到小计为下面的截图显示。

img

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

  • 备注: 在公式:
  • A2:A13 是提取所有唯一值的单元格范围;
  • D1 是您输入的公式上方的单元格。

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

img

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

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

4. 然后,向下拖动填充手柄以复制此公式以返回其他组的总顺序,请参见屏幕截图:

img


使用的相对功能

  • SUMIF:

  • SUMIF 函数可以帮助根据一个标准对单元格求和。

  • IF:

  • IF 函数测试特定条件并返回您为 TRUE 或 FALSE 提供的相应值。

总结

1、请在第一行配置列名,然后使用如下公式,将$A$13和$B$13修改为真实的数据区域:

最后,下拉公式即可。

参考

https://zh-cn.extendoffice.com/excel/formulas/excel-sum-by-group.html

标签:

头像

小麦苗

学习或考证,均可联系麦老师,请加微信db_bao或QQ646634621

您可能还喜欢...

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注

5 × 4 =

 

嘿,我是小麦,需要帮助随时找我哦
  • 18509239930
  • 个人微信

  • 麦老师QQ聊天
  • 个人邮箱
  • 点击加入QQ群
  • 个人微店

  • 回到顶部
返回顶部