今天介绍 indirect 函数的第四种经典应用场景:跨数据表求和。我用的版本是 Excel 2016,其他版本的界面可能略有不同。Excel跨表求和的三种方法:直接sum求和、SUM(‘*’!B2)适用于排名一致情况、数组公式SUM(SUMIF(INDIRECT(),A2,INDIRECT()))适用于各表排序不同情况,详细请看下文介绍。

微软Office LTSC 2021专业增强版 简体中文批量许可版 2024年09月更新
- 类型:办公软件
- 大小:2.2GB
- 语言:简体中文
- 时间:2024-09-12
查看详情
案例:
沿用昨天的表,如果我们需要对每个人的奖金求和,即跨表调用并求和,怎么实现?
解决方案:
- 方案 1. 也许有人抖机灵,说在昨天已经多表调用的结果上,横向 sum 求和。嗯,不能说不对,但是如果表数据列特别多,sheet 特别多,且总表只需要显示求和数据时,这显然不是最优方法。
- 方案 2. 假如总表的人员排名跟所有月表的人员排名完全一致,可以用以下公式:
=SUM('*'!B2)
回车后,公式会自动变成 =SUM(‘1月:3月’!B2),即读取所有 sheet 的 B2 单元格并求和
请注意:这个方法很简单,但是对表格要求比较高,但凡人员列稍有差异,结果就出错。比如,郭德纲 2 月休假,没有奖金,2 月的表里就没有放他的名字,本方案就不适用
方案 3.
输入以下数组公式,按 Ctrl +Shift + Enter 生效:
=SUM(SUMIF(INDIRECT(ROW($1:$3)&"月!A:A"),A2,INDIRECT(ROW($1:$3)&"月!b:b")))
公式翻译:
INDIRECT(ROW($1:$3)&”月!A:A”):读取 sheet”1 月“到”3 月“的 A 列值,即姓名
sumif(…,A2,INDIRECT(ROW($1:$3)&”月!b:b”)):将上一步读取的值与 A2 的值比较,如果相等(即姓名相同),则读取 sheet”1 月“到”3 月“的 B 列值,即奖金
最后用 Sum 对读出的每个月奖金值求和
推荐阅读:跨多个 Excel 工作表求和,每个表的排序不一样怎么办?
注意事项:
1、文稿PPT,仅供学习参考,请在下载后24小时删除。
2、如果资源涉及你的合法权益,第一时间删除。
3、联系方式:sovks@126.com
115PPT网 » Excel跨数据表求和indirect函数怎么用?
1、文稿PPT,仅供学习参考,请在下载后24小时删除。
2、如果资源涉及你的合法权益,第一时间删除。
3、联系方式:sovks@126.com
115PPT网 » Excel跨数据表求和indirect函数怎么用?