【问题标题】:change cell range reference based on other cell value根据其他单元格值更改单元格范围参考
【发布时间】:2019-11-01 14:00:38
【问题描述】:

我有一张表,我在其中加载了一组数据。每一列都是一个类别,但我事先不知道每列的具体名称/标题/标题。我可以手动将列名转换为给定的类别并将其写在另一张纸上。另外,我不知道数据集中的列数和行数。请参阅图像以获取示例,其中我有一个数据集和一个表,我在其中手动键入哪一列是哪个类别。

数据集:

我手动设置哪一列是哪一类别的表:

假设我现在想在公式中使用与特定类别(一列)关联的数据,以便我获取具有该类别的列的总和(例如,我手动说明的示例中的“强制”)单元格 B2 中的另一张表是 B 列)。

最终的结果应该是我从第 2 行到列的末尾取 B 列的总和(其中列字母在单元格 B2 的另一张表中读取)。我相信我不知道要完成这项工作的两件事是:

  1. 如何使用单元格中的值来引用另一个工作表中的列?
  2. 如何从已知的起始行到末尾(数据中的行数未知)求一列的总和?

非常感谢任何帮助! :-)

【问题讨论】:

  • 您也许可以使用 INDIRECT。至于问题 2,只需对整列求和即可。
  • =SUM(INDIRECT("'Sheet2'!" & B2 & ":" & B2))
  • 或者更好的是,使用列号 A=1,B=2,... 代替列字母,并使用非易失性索引:=SUM(INDEX(Sheet2!A:I,0,B2))
  • 谢谢斯科特·克兰纳!这正是我想要的。你能把它变成答案吗? :-)

标签: excel excel-formula


【解决方案1】:

您可以使用间接:

=SUM(INDIRECT("'Sheet2'!" & B2 & ":" & B2))

但我建议不要使用列号,而是使用列号 A=1,B=2,... 并使用非易失性索引:

=SUM(INDEX(Sheet2!A:I,0,B2))

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-10-26
    • 2021-10-10
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多