打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
多个Excel表的相同项如何求和?
今天学习sumif跨多表进行条件求和。

一、工作表名规则(序号 字符)

【举例】如下图,有1-5日5个列相同、行数不同的明细表,需要汇总出各产品的销量之和。

分表如下:


汇总表如下:



问题分析:
若仅有一个表,只需使用sumif函数求和即可,公式如下:
=SUMIF('1日'!B:B,合计!A2,'1日'!C:C)
但对于多个表,除使用sumif() sumif sumif()...之外,Sumif函数支持多表同时进行求和,但需要使用indirect函数,以生成对多个表的引用,即:
INDIRECT(ROW($1:$5)&'日!B:B')
INDIRECT(ROW($1:$5)&'日!C:C')

使用sumif函数组合起来,公式如下:
=SUMIF(INDIRECT(ROW($1:$5)&'日!b:b'),A2,INDIRECT(ROW($1:$5)&'日!c:c'))
但上述的公式返回的各表的求和结果,为一组数,还不是求和结果,之后还需使用sumrpoduct函数求和,公式如下:
=SUMPRODUCT(SUMIF(INDIRECT(ROW($1:$5)&'日!b:b'),A2,INDIRECT(ROW($1:$5)&'日!c:c')))

二、工作表名称不规则

但工作表的名称却经常为不规则的,如下:


问题分析:
先需要使用宏表函数以取得表名,操作步骤如下:
鼠标依次点击公式 - 名称管理器 - 新建名称 - 在新建名称里输入名称“sh”,之后在“引用位置”框里输入公式为:
=MID(GET.WORKBOOK(1),FIND(']',GET.WORKBOOK(1)) 1,99)&T(now())
公式解释:
GET.WORKBOOK(1)为宏表函数,当参数为1时,可获取当前工作簿中的所有工作表的名称,因名称里含有工作簿名称,可以使用FIND MID来截取仅含工作表名称的字符串。&T(now())让公式自动更新。


接下来,在公式中使用 sh&'! 替换ROW($1:$5)&'日!,
最终公式如下:
=SUMPRODUCT((SUMIF(INDIRECT(sh&'!b:b'),D2,INDIRECT(sh&'!c:c'))))
因为sh取得的名称里包含“合计”,在汇总表制作时,需避开B列和C列,以避免造成循环引用。


·END·

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
这才是Sumif函数的最高级用法
2015年终奉献: Excel超难的多表查找、求和与合并公式
Excel中最牛的函数不是vlookup,也不是sumifs,而是.....
职场必会函数-INDIRECT函数
Excel科普(十二)|SUMIF求和函数高级用法:跨多表条件求和
年底必学,12个月的统计套路!
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服