我已使用INDIRECT
和OFFSET
动态更新Excel中的图形。当图形区域由多个范围组成时,我无法找到此问题的解决方案。以下是多个范围的图表引用示例:
在图表对话框中:
(Sheet1!$G$2:$G$22,Sheet1!$H$2:$H$22,Sheeet1!$I$2:$I$22)
[有些人将,
称为范围连接。]
在公式栏中:
=SERIES(,(Sheet1!$A$2:$A$22,Sheet1!$B$2:$B$22,Sheeet1!$C$2:$C$22),
(Sheet1!$G$2:$G$22,Sheet1!$H$2:$H$22,Sheeet1!$I$2:$I$22),1)
当只有一个范围工作正常时使用INDIRECT
(该技术已在SO上多次说明),但在使用上述范围(无效参考)时失败。
如何解决此问题?
答案 0 :(得分:0)
我找到了解决这个问题的方法
我对整个表达式(Sheet1!$G$2:$G$22, Sheet1!$H$2:$H$22, Sheet1!$I$2:$I$22)
使用了 INDIRECT()函数。因此,如果上面的表达式以字符串形式出现在 Sheet1 的 A1 中,那么我定义了命名变量YVALUES = INDIRECT(Sheet1!$A$1)
。
在我为 y值选择的图表对话框中:Sheet1!YVALUES 会导致错误。解决方案是定义三个命名变量,每个区域对应一个变量。假设A1包含字符串Sheet1!$ G $ 2:$ G $ 22,A2字符串Sheet1!$H$2:$H$22
, A3 字符串Sheet1!$I$2:$I$22
。
现在定义命名变量YVAL1 = INDIRECT (Sheet1!$A$1), YVAL2 = INDIRECT (Sheet1!$A$1), and YVAL3 = INDIRECT (Sheet1!$A$3)
。
在图表对话框中输入(Sheet1!YVAL1, Sheet1!YVAL2, Sheet1!YVAL3)
。这很有用,重要的是要记住在图形对话框中输入括号和逗号。