跨多表条件求和方法
今天我们来探讨一下跨多个Excel/WPS表格进行条件求和的方法。假设我们有多个工作表,每个工作表都有相同的列但行数不同的明细表,我们的目标是汇总出每个产品的销量之和。
工作表命名规则
首先,我们需要给每个工作表进行命名。例如,我们可以按照序号字符的规则给工作表命名。如下图所示,我们有1日~5日共5个工作表。要求汇总每个产品的销量之和。
单个表求和方法
如果只有一个表格,我们可以直接使用SUMIF函数进行求和。例如,在第一个工作表中,我们可以使用以下公式:
SUMIF('1日'!B:B, '合计'!A2, '1日'!C:C)
多个表求和方法
对于多个表格,除了使用SUMIF函数之外,也可以利用INDIRECT函数生成对多个表格的引用。例如,我们可以使用以下公式:
SUMIF(INDIRECT("1日!B:B"), A2, INDIRECT("1日!C:C"))
这样,我们就能够通过SUMIF函数结合INDIRECT函数来同时求和多个工作表的数据。
多表求和结果汇总
上述公式返回的是每个工作表的求和结果,是一组数值。如果我们想要将这些结果汇总起来,可以使用SUMPRODUCT函数。例如:
SUMPRODUCT(SUMIF(INDIRECT("1日!B:B"), A2, INDIRECT("1日!C:C")))
通过SUMPRODUCT函数,我们可以对每个工作表的求和结果进行求和,得到最终的销量之和。
不规则的工作表名称
实际情况中,工作表的命名往往是不规则的。例如,下图所示的工作表名称就存在不规则性。
为了解决这个问题,我们可以使用宏表函数来获取工作表的名称。首先,在名称管理器中新建一个名称,例如“sh”,然后在“引用位置”框中输入以下公式:
MID((1), FIND("]", (1)) 1, 99)T(NOW())
其中,(1)是一个宏表函数,当参数为1时,可以获取当前工作簿中所有工作表的名称。通过FIND和MID函数,我们可以截取只包含工作表名称的字符串。而T(NOW())的作用是让公式自动更新。
由于获取的工作表名称中可能包含“合计”等无关字符,所以在制作汇总表时,需要避开相应的列,以免造成循环引用的错误。
以上就是跨多个Excel/WPS表格进行条件求和的方法。希望对您有所帮助!
版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。