根据行中是否有属于某个范围的值对特定行中的值进行求和

根据行中是否有属于某个范围的值对特定行中的值进行求和

我正在尝试这样做:我有一张表格,其中包含大约一百个不同帐户的多个指标(例如收入、成本等)。我无法修改此表,因为它会由其他组自动更新。

在摘要页面上,我希望能够选择一个指标,例如收入(单元格 C11),并指定一组帐户(命名范围 C12:C13)。结果(单元格 C16)应该是所有指定帐户的收入总和。

仅对于一个帐户,我拥有:

=SUM(IF(B3:B8=SelectedAccount, IF(C2:D2=SelectedMetric, C3:D8)))

但我希望能够对多个帐户执行此操作。帐户列表是可变的,大约有 30 个帐户,因此不能只将上述几个公式链接在一起。

这是简化的示例,采用图像格式。(结果应为 12)。 简化示例

任何帮助将不胜感激!

答案1

=SUM(INDEX(C2:D7,0,MATCH(SelectedMetric,MetricHeaders,0))*IFERROR(MATCH(AccountNames,SelectedAccount,0)>0,0))

在哪里:

  • MATCH(SelectedMetric,MetricHeaders,0))- 查找所选指标的列号
  • INDEX(C2:D7,0,MATCH(...))- 从表中选择所需的列
  • MATCH(AccountNames,SelectedAccount,0)>0- 选择所选帐户中的行
  • IFERROR(MATCH(...)>0,0)- 将错误转换为0

与原题公式类似,这也是一个数组公式,需要通过CTRL + SHIFT + ENTER

相关内容