首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

多表动态求和,indirect才是幕后的牛X函数

昨天有一个同学提问:

有N个月份的表格,想对同一个表求和可以用公式

=SUM('1月:6月'!A1)

但如果想对任意月份之间的A1单元格求和,该如何设置公式?如下图所示根据C1的开始月份和C2的结束月份,动态计算该月份之间的A1的和

分析:要解决这个问题,首先要根据开始和结束月份数字生成所有月份的地址

=ROW(INDIRECT(C1&":"&C2))&"月!A1"

公式说明:indriect可以把连接后的文本转换为行数,然后用row取行数值生成连续的整数

然后再用indirect把文本转换为引用,外面再套sum求和(老版本应该需要按ctrl shift enter三键输入数组公式)

=SUM(INDIRECT(ROW(INDIRECT(C1&":"&C2))&"月!A1"))

如果需要向下复制公式,对A2,A3...动态求和,公式可以修改为

=SUM(INDIRECT(ROW(INDIRECT(C$1&":"&C$2))&"月!A"&ROW(A1)))

兰色说:今天的多表求和公式中,应用了indirect的两个生要应用,一个是row+indirect生成动态序列,一个是把文本转换为引用。它才是多表求和的背后大神。

  • 发表于:
  • 原文链接https://page.om.qq.com/page/Obf4qSDu__m6ny3RAo1bLRMg0
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券