You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

Excel中基于指标匹配的动态季度数据汇总方法问询

Excel中基于指标匹配的动态季度数据汇总方法问询

问题背景

我有一份Excel表格,结构是指标作为行月份作为列,同时还有辅助的季度列来标记每个月份所属的季度。原始数据示例如下:

原始数据表格

维度/日期2022-01-012022-02-012022-03-012022-04-012022-05-012022-06-012022-07-012022-08-012022-09-012022-10-012022-11-012022-12-01
Quarter2022-01-012022-01-012022-01-012022-04-012022-04-012022-04-012022-07-012022-07-012022-07-012022-10-012022-10-012022-10-01
Month2022-01-012022-02-012022-03-012022-04-012022-05-012022-06-012022-07-012022-08-012022-09-012022-10-012022-11-012022-12-01
MetricsJan 2022Feb 2022Mar 2022Apr 2022May 2022Jun 2022Jul 2022Aug 2022Sep 2022Oct 2022Nov 2022Dec 2022
Revenue100010001000500500500100100100000
Cost1010101010102020200510

我想要生成一份动态的季度汇总表,比如指定报告月份后自动汇总最近3个季度的数据,理想的汇总结果如下:

目标汇总表

指标Q2 2022Q3 2022Q4 2022
Revenue15003000
Cost306015

当前遇到的问题

我试过用SUMIFS函数,公式大概是:

SUMIFS([Value row range],[Quarter range],[Quarter wanted])

但这个方法需要手动选择对应指标的数值行范围,不够灵活。我也知道INDEX+MATCH组合,但它只能找到第一个匹配项,没办法对同一季度下的所有月份数值求和。

想请教有没有办法不用手动选行,而是通过匹配指标名称,自动对对应指标下同一季度的所有数值求和?


解决方案

这里推荐两种可行的方法,你可以根据自己的Excel版本选择:

方法1:使用SUMPRODUCT函数(兼容所有Excel版本)

SUMPRODUCT可以同时匹配指标名称季度两个条件,然后对符合条件的数值求和。假设:

  • 指标名称区域是$A$4:$A$5(Revenue、Cost所在行)
  • 季度标记区域是$B$1:$M$1(Quarter行的所有日期)
  • 数值区域是$B$4:$M$5(所有指标的月度数值)
  • 要匹配的目标指标在F10单元格,目标季度在G9单元格

公式可以写成:

=SUMPRODUCT(($A$4:$A$5=F10)*($B$1:$M$1=G9)*$B$4:$M$5)

解释:

  • $A$4:$A$5=F10:筛选出对应指标的行
  • $B$1:$M$1=G9:筛选出对应季度的列
  • 两个条件相乘得到符合要求的单元格区域,再乘以数值区域后求和

方法2:使用动态数组函数SUM+XLOOKUP(适用于Excel 365/2021)

如果你的Excel支持动态数组,可以用XLOOKUP先匹配到对应指标的整行数据,再用SUMIFS对该行中属于目标季度的数值求和:

=SUMIFS(XLOOKUP(F10,$A$4:$A$5,$B$4:$M$5),$B$1:$M$1,G9)

解释:

  • XLOOKUP(F10,$A$4:$A$5,$B$4:$M$5):根据指标名称获取对应指标的所有月度数值行
  • 再用SUMIFS对这一行中属于目标季度的数值求和

这两种方法都不需要手动选择数值行,只要指标名称和季度匹配正确,就能自动计算出汇总结果,完全满足动态汇总的需求。


备注:内容来源于stack exchange,提问作者Dan Pham

火山引擎 最新活动