在没有VBA的情况下动态更改Excel图表中的范围?

时间:2017-09-21 20:59:21

标签: excel charts

我绘制了值,我需要动态更改范围的开始和停止。该图表是从包含5个预测日数据的工作表中绘制的。图表中的每一行代表一个预测日。每天都有新数据添加到工作表中,因此每个预测日都有更多条目。这是一个例子:

=系列("第4天",表!$ B $ 2:$ B $ 49,表!$ F $ 147:$ F $ 193,5)

我需要Excel来查找每个预测日的开始和停止行号,并在每次有新数据时更改它们。所以预测第4天$ 147美元:$ 193美元的范围将改为$ F $ 148:$ F $ 194等。

是否可以在公式中执行此操作?如果我能避免的话,我真的不想搞乱VBA。

1 个答案:

答案 0 :(得分:0)

如果您有一个已定义的开始日期,例如“01/01/2017”,您可以使用“TODAY()”来计算基于该数字的天数和增量。

例如:

=DAYS(TODAY(),DATE(2017,1,1))

今天返回263,明天返回264。您可以添加/减去此数字以每天更改系列范围的值;例如($F$ & =DAYS(TODAY(),DATE(2017,1,1)) - 116 & ":$F$ & =DAYS(TODAY(),DATE(2017,1,1)) - 70)会给你想要的结果。

编辑: 因为您显然无法使用公式定义图表系列,所以在列表/数据表之外创建一个中间数据范围(您甚至可以使用没有单元格引用的命名范围 - 无所谓)。此范围应与您要在图表上显示的数据范围相同。然后将您的数据动态范围引用到此范围内的所有单元格;例如=F & =DAYS(TODAY(),DATE(2017,1,1)) - 116或公式需要的任何内容,但对所有引用的单元格执行此操作。然后使您的图表系列引用包含动态公式的单元格。