【问题标题】:Dynamic chart data series referring to multiple named ranges引用多个命名范围的动态图表数据系列
【发布时间】:2016-07-20 18:18:52
【问题描述】:

我在 Excel 2010 中有一个图表,我想要一个数据系列,它可以根据另一个单元格中的条件引用多个命名范围。例如,如果A1 = 1,数据系列将显示来自S_1 的数据,如果是A1 = 2,它将显示来自X_1 的数据。 S_1X_1 都是动态的,可以根据我拥有的其他条件引用不同的数据。

我已进入图表的选择数据源,并尝试将数据系列的系列值设置为等于 IF(A1 = 1, S_1, X_1)CHOOSE(A1,S_1,X_1) 等公式,但它说这些函数无效。

公式的语法是关闭的,还是excel在其序列值中不接受这些公式?如果是后者,还有什么方法可以达到预期的效果?

【问题讨论】:

  • 你可以试试命名公式。与您命名的范围相同。制作一个名为 Data_series 的命名公式,并在您选择数据范围的区域中放置类似 IF(A1=1,S_1,if(A1=2,X_1,0)) 的内容,您可能需要为您的命名范围提供一个间接的。我没有对此进行测试,因此它是评论而不是答案。

标签: excel charts excel-formula excel-2010


【解决方案1】:

我会使用另一列(可以隐藏)来提取我想要绘制的特定数据。 首先,您需要一个列表或其他方式将A1 中的数字解释为您要显示的特定系列。比您创建一个从表中获取相关数据并在其上设置图表的列(为简单起见,我假设它与您的数据对齐)。

现在,一步一步来:

  1. 定义A1 中的数字与您要选择的数据系列之间的映射。我将它用作数据的列号。
  2. 将所有数据范围定义为命名范围,例如data
  3. 新建一列,并将此公式粘贴到第 1 行:=INDEX(data,1,$A$1),这将带来标题。
  4. 在下面的单元格中输入:=IF(ISBLANK(INDEX(data,0,$A$1)),NA(),INDEX(data,0,$A$1)) 以获取相关系列的数据,如果为空,则输入 #N/A
  5. 将第二个公式一直拖到任何系列中包含数据的最低行。
  6. 根据新列创建图表,观察如何更改 A1 中的值并查看图表更新。

如果它回答了你的问题,请告诉我;)

【讨论】:

  • 不得不更改一些组件以使其适用于我的工作表,但这是我一直在寻找的,而且效果很好!谢谢!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-07-05
  • 1970-01-01
  • 2014-12-16
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多