在数据中添加新的列和行时,Excel自动更新图形

时间:2018-08-21 01:25:18

标签: excel graph charts formula

Line graph and source table

我的excel图形来自另一个工作表中的表格,如上图所示。

该图的X轴在第3行中以蓝色显示月/年标头,但A&B列除外(.... 43.july17,44.aug17,...)。

Y轴显示Ave。排除了第5​​7行中As和B列以外的内容

每个月我都需要在“ AY”和“ AZ”列之间插入一个新的“月/年”列。我还需要插入新的每月行数据,在这种情况下,请在第17个月的第14个月下插入Ave。订阅者人数行每月向下移动1行。

TOTALS列(AZ)下的数据不包括在图中。我目前使用图形公式:

=SERIES(,'Cohorts(32015)'!$C$3:$AX$3,'Cohorts(32015)'!$C$57:$AX$57,1)

但是,当我向表中添加新列时,它不会自动更新。有办法吗?

1 个答案:

答案 0 :(得分:0)

是的:)。

Excel中有一个名为“名称管理器”的函数。您可以在此处定义范围(命名范围或一个或多个单元格),并因此在插入或删除列或行时使范围动态化。

指南:

转到“公式”->“定义的名称”->“新建..”

https://intellij-support.jetbrains.com/hc/en-us/community/posts/115000798990-Vendor-directory-being-automatically-excluded

我创建两个范围(注意,我在 $ 中使用绝对引用)。

enter image description here

1-第一个用于轴值(43.july17、44.aug17等)。我称它为“ Month_Name”。请注意,根据您的示例,您需要从$C$3开始。

=OFFSET(Sheet1!$AS$3,0,0,1,COUNTA(Sheet1!$AS$3:$AZ$3)-1)

2-第二个用于您的数据范围(Av。subs长度)。我称这个范围为“ Ave_Sub”。

=OFFSET(Sheet1!$AS$57,0,0,1,COUNTA(Sheet1!$AS$57:$AZ$57)-1)

点击您的系列(在图形/图表中),然后将系列名称更改为工作表名称+命名范围,即,在我的情况下,工作表名称为“ Sheet1”:

=SERIES(;Sheet1!Month_Name;Sheet1!Ave_Sub;1)

enter image description here

现在添加行或列时,图形将自动展开(我添加了1行和1列)。

enter image description here



有关公式的详细信息:

那它如何工作?

公式的语法为:

=OFFSET(reference, rows, cols, [height], [width])

在我们的情况下

=OFFSET(Sheet1!$AS$3,0,0,1,COUNTA(Sheet1!$AS$3:$AZ$3)-1)

位置:

reference:是我们的开始列$AS$3

rowscols:我们不想偏移任何列或行。因此:0,0。

[height]:= 1,因为我们只有一行。

[width] = COUNTA(Sheet1!$AS$3:$AZ$3)-1,我们在图表中选择了想要的第一列,在范围中选择了最后一列。删除列。在我们的案例中,“总计”将是我们的最后一列。但是我们不希望出现“总计”,因此我们将-1放在我们的范围内。

enter image description here

对于列:

=OFFSET(<sheet name="">!<start cell="">,0,0,1,COUNTA(<sheet name="">!<column name="">:<column name="">) - 1)

对于行:

=OFFSET(<Sheet name>!<start cell>,0,0,COUNTA(<Sheet name>!<Column name>:<Column name>) - 1)