SUMIF 动态更改求和列

Posted

技术标签:

【中文标题】SUMIF 动态更改求和列【英文标题】:SUMIF dynamically change summing column 【发布时间】:2014-11-06 21:06:45 【问题描述】:

我正在使用 SUMIFS 并希望 sum_range 根据我的列名称动态更改。

我有一张大约有 100 列的表格。假设其中一列是Paid_BC_items。我想要一个公式来查找 Paid_BC_items 所在的列,并以某种方式将其插入到 Sheet4!J:J 部分所在的 SUMIF 中。我这里还有一些其他标准是固定的,因此它们不需要是动态的。

=SUMIFS(Sheet4!J:J,Sheet4!$C:$C,Sheet2!$D$3,Sheet4!$E:$E, Sheet2!$C6, Sheet4!$G:$G, Sheet2!$D6)

例如,如果我将列标题更改为其他我想要 SUMIF 的内容,则在大表中查找该列并将其返回。

我知道它与索引、匹配和间接有关,但我现在无法弄清楚。

年 周 支付的总订单数_BC_items Free_BC_items 2014 1 971 147 104 2014 2 1565 339 213 2014 3 1289 391 209 2014 4 1171 389 228 2014 5 1163 375 240 2014 6 1298 405 330 2014 7 1233 404 292

【问题讨论】:

【参考方案1】:

尝试使用它代替总和范围

INDEX(Sheet4!A:DZ,0,MATCH("Paid_BC_Items",A1:DZ1,0))

当您使用带有 0 的 INDEX 作为行参数时,您将获得整列......并且 MATCH 根据标题选择正确的列

整个公式变为:

=SUMIFS(INDEX(Sheet4!A:DZ,0,MATCH("Paid_BC_Items",A1:DZ1,0)),Sheet4!$C:$C,Sheet2!$D$3,Sheet4!$E:$E, Sheet2!$C6, Sheet4!$G:$G, Sheet2!$D6)

【讨论】:

【参考方案2】:

使所有列标题变得动态并能够拖动

MATCH(indirect(d$1),A1:DZ1,0))

【讨论】:

以上是关于SUMIF 动态更改求和列的主要内容,如果未能解决你的问题,请参考以下文章

在行值更改后,在另一列中返回一行

Oracle SQL 在字段更改时运行总计(仅在字段更改时对列求和)

sumif和countif的区别

=ArrayFormula 使用 SumIf 函数在 Google 表格中的两个日期之间求和

Pandas 按名称和索引大小更改的索引对所有其他列求和

EXCEL入门