二维码 购物车
部落窝在线教育欢迎您!

如何计算Excel表相同单号的金额?你需要一个嵌套公式!

 

作者:老徐来源:部落窝教育发布时间:2022-04-20 17:13:52点击:7498

分享到:
0
收藏    收藏人气:0人
版权说明: 原创作品,禁止转载。

编按:

今天主要给大家分享一个嵌套公式,即IFSUMIF的嵌套,自动将相同订单号的金额进行合并运算,赶紧来看一看吧!

 

Hello,大家好。今天跟大家分享一个小伙伴在工作中遇到的实际问题。如下图所示,是企业5月份的销售额情况。由于每张订单上会有多个商品,导出来的销售明细表上每个商品编码一行记录,每个订单号有多行记录。

 

表格
描述已自动生成

 

而同一订单号有可能占两行,有可能占四行,还有可能占五行,且同一订单号到底有多少行记录是没有规律的。

 

在这种源数据结构基础上,领导要求我们在F列统计出来每个订单号的销售额合计,并在该订单号第一次出现的位置体现合计金额,如下图样式所示,我们应该如何写公式呢?

 

表格
描述已自动生成

 

如果能够改变源数据的结构,统计结果能够单独放在另外一张表格上的话,处理就简单多了,我们可以使用数据透视表或者sumif函数来汇总每个订单号的金额合计。

 

但现在工作上要求的是在“订单号”列旁直接小计出来相同单号合计金额,这样既可以看到订单号总金额,又可以看到这一订单对应的商品明细。对于此种情况,我们可以在F2单元格输入公式 =IF(E2=E1,"",SUM(IF(E2:$E$1000=E2,D2:$D$1000,0))) 然后同时按下 ctrl+shift+enter,再下拉公式,即可。



 

公式讲解:

1.由于要求我们只在订单号第一次出现时返回该订单号的合计数,所以使用if函数即可实现。=IF(E2=E1,"",合计数),当我们下拉公式之后,公式会依次变为

=IF(E3=E2,"",合计数)

=IF(E4=E3,"",合计数)

=IF(E5=E4,"",合计数)

=IF(E6=E5,"",合计数)

意思是,如果E3单元格的内容等于E2单元格的内容,则返回空文本字符串,否则返回合计数。也就是说如果本行的订单号等于上一行的订单号,就返回空文本字符串,本行的订单号和上一行的订单号不相同,则返回合计数。

 

2IF(E2:$E$1000=E2,D2:$D$1000,0) 返回的是一组数,这个公式将会进行999次计算:

IfE2=E2D20

IfE3=E2D30

IfE4=E2D40

IfE5=E2D50

……

比如,我们在F2单元格输入= IF(E2:$E$1000=E2,D2:$D$1000,0),然后同时按下ctrl+shift+enter,在编辑栏抹黑公式,再按F9键,可以看到这个公式中存放的数值,如下图所示。



 

3.由于IF(E2:$E$1000=E2,D2:$D$1000,0)返回的是类似={1686.06;525.54;0;0;0;0;0;0;0;0;0;0;0;0;……}这样的一组数,在if外嵌套一下sum函数就是求这组数的合计数了,也就是求等于E2单元格中的订单号的金额的合计。sum(if(区域<>=1,区域,0) 是一种非常经典的应用。

 

例如下面这个例子,统计工资在2万元以上的员工的工资总额,可以这样写公式 =SUM(IF(B:B>20000,B:B,0)),输入完这个公式时注意不要直接按回车,而是同时按下ctrl+shift+enter



怎么样,ifsumif的嵌套你学会了吗?

 

本文配套的练习课件请加入QQ群:902294808下载。

Excel高手,快速提升工作效率,部落窝教育《一周Excel直通车》视频和Excel极速贯通班》直播课全心为你!

扫下方二维码关注公众号,可随时随地学习Excel

IMG_256

相关推荐:

如何计算员工累计达标的月份,你需要一个SUBTOTAL函数!

如何计算两个日期间的工作日天数?超实用的5类日期函数来了!

如何在特定位置批量插入空行等12种实用办公技巧

工资表转工资条,VLOOKUP有绝招!

 

版权申明:

本文作者老徐;同时部落窝教育享有专有使用权。若需转载请联系部落窝教育。