×

多工作表 多条件 求和 跨表 汇总

数量可变的多工作表多条件求和

鹭岛小千 鹭岛小千 发表于2021-08-28 07:40:55 浏览653 评论0

抢沙发发表评论

【问题描述】下图Excel文件里有2021年1-5月份的工资表,后续还将逐月新增,如何在汇总表里编写一个通用公式获取王五2021年的工资总和呢?

35-1.png35-2.png35-3.png

【小千解答】思路:借助宏表函数获取可变的目标工作表清单,使用sumifs函数实现多条件求和,通过indirect函数构建多工作表引用,最外层使用sumproduct函数进行汇总。

Step 01 新建“目录”工作表,A1:C1分别录入:所有工作表清单、排除工作表清单、目标工作表清单。

Step 02 【公式】→【名称管理器】,新建两个名称:

清单

=GET.WORKBOOK(1)

工作表

=INDEX(清单,ROW(目录!A1))&T(NOW())

35-4.png

Step 03 关闭名称管理器,A2输入以下公式后下拉填充至A31。

=IFERROR(MID(工作表,FIND("]",工作表)+1,99),"")

Step 04 单击B2→【数据】→【数据验证】→“允许”选择【序列】,“来源”输入以下公式,下拉填充至B31。

=OFFSET($A$2,,,COUNTA(清单),1)

35-5.png

Step 05 C2输入以下数组公式,按【Ctrl+Shift+Enter】,下拉填充至C31。

=IFERROR(INDEX($A$2:$A$31,SMALL(IF(COUNTIF($B$2:$B$31,$A$2:$A$31)=0,ROW($A$1:$A$30),99),ROW(A1))),"")

35-6.pngStep 06 【公式】→【名称管理器】,新建一个名称

目标工作表

=OFFSET(目录!$C$2,,,30-COUNTBLANK(目录!$C$2:$C$31),1)

35-7.png

Step 07 在“汇总表”工作表的D4输入以下公式,向上填充至D2。(多条件指:事业部、部门、部门负责人均匹配)

=SUMPRODUCT(SUMIFS(INDIRECT("'"&目标工作表&"'!$D$1:$D$5000"),INDIRECT("'"&目标工作表&"'!$A$1:$A$5000"),A4,INDIRECT("'"&目标工作表&"'!$B$1:$B$5000"),B4,INDIRECT("'"&目标工作表&"'!$C$1:$C$5000"),C4))

35-8.png


打赏码.png


群贤毕至

访客