1

所以我有一个 excel 电子表格指示器,我正在尝试制作一个 SUMIFS 语句来更改我从哪一列中选择。所以我将在左侧有列名,我想将其用作可变参数。请参见下表。

TABLE1
        week1  week2 week3
column1  x       x     x 
column2  x       x     x 
column3  x       x     x

TABLE2
Week column1  column2 column3
  1     x        x       x
  1     x        x       x
  1     x        x       x
  2     x        x       x
  2     x        x       x
  2     x        x       x

所以在上面的表格中,TABLE2 保存了所有数据,而 TABLE1 基本上是按周计算的数据的总和。所以我希望 SUMIFS 读取类似 SUMIFS(TABLE2[????], TABLE2[Week], $B$2) 但我不知道如何获取 SUMIFS 的 sum_range 部分让我传递参数. 关于如何做到这一点的任何提示或想法?

4

3 回答 3

0

你可以使用 INDEX 和 MATCH,像这样

=SUMIFS(INDEX(TABLE2,0,MATCH($A3,$A$7:$D$7,0)),TABLE2[Week],B$2)

其中 A3 包含“column1”,A7:D7 包含 TABLE2 的列标题

于 2012-06-18T15:39:47.247 回答
0
=INDIRECT("TABLE2[" & A3 & "]")

将解析为 TABLE2[column1](假设 A3 包含文本“column1”)

因此可以将间接函数作为您的 sum_range 放入(在 excel 2007 中测试)

于 2012-06-18T15:45:53.237 回答
0

这是一个 SUMPRODUCT 公式。我使用 Sheet1 和 Sheet2 而不是表格。您可以更改公式以满足您的需要。
=SUMPRODUCT(--(Sheet2!$A2 = Sheet1!$B$1:$D$1) * --(Sheet2!B$1 = "week" & Sheet1!$A$2:$A$7), Sheet1!$B$2:$D$7)

于 2012-06-18T16:02:56.643 回答