2010-09-21 139 views
2

我有一个客户端,它有一个简单而复杂的excel表单设置请求,我不能从哪里开始。我正在画空白。Excel图表动态范围选择

我们有一个数据范围。例如:

Quarter  Data 
2010Q1  1 
2010Q2  3 
2010Q3  4 
2010Q4  1 

我有一个图表建立在此之上。更改数据,更改图表,保护工作表以防止其他用户更改旧数据。简单。

我想要发生的事情:当我在Q4下面添加下一个Q1时,图表会自动选择最近的4Q。所以当我更新数据时:

Quarter  Data 
2010Q1  1 
2010Q2  3 
2010Q3  4 
2010Q4  1 
2011Q1  7 

该图表将显示过去4个季度(2010Q2到2011Q1)的数据。目标是:将“旧”数据保留在同一张表上,但图表会更新到最近几个季度。

我在想:“固定”数据的位置,反转的数据(在顶部新的数据),而只是插入行中的每个新季度:

Quarter  Data 
2011Q2  9 
2011Q1  7 
2010Q4  1 
2010Q3  4 
2010Q2  3 
2010Q1  1 

但是,这将涉及大量更改的已经存在的excel工作表,我希望可能有一个更容易/更好的“修复”。


编辑: @Lance罗伯茨〜运行你的建议:
- 更多详情...的数据是这样设置,从而列的信息是A,但多个表的数据是B +。表1是B/C。表2是D/E。等等
- 数据也位于与表格不同的工作表上。

转到:This Offset Description,我所试图做的调整类似这样的:

NAME  FORMULA OFFSET(range, rows, columns, height, width) 
DATA0  =OFFSET('DATASHEET'!$A$2, COUNTA('DATASHEET'!$A:$A - 8, 0, 8, 1) 
DATA1  =OFFSET('DATASHEET'!$A$2, COUNTA('DATASHEET'!$A:$A - 8, 1, 8, 1) 
DATA2  =OFFSET('DATASHEET'!$A$2, COUNTA('DATASHEET'!$A:$A - 8, 2, 8, 1) 

目标是到/ C /等数据领带长度/位置B到A所以,如果我添加A上的列,与Data1/2绑定的东西相应地调整(或3/4/5等,这是不同图表上的不同图表 )

我希望数据单元被第一行选中,然后一个偏移数字来获取数据x列。公式上的变化似乎不起作用。

1的问题我还没有解决:数据没有正确对齐:Example

“数据”始终是,在第2最后一列最后一个季度。上个季度总是空空的。数据正在向右移动(在这个例子中,在2010年第三季度 - 不在正确的栏目下,11月份应该低于第四季度,9.5应该低于第二季度)。

我知道我得到一些简单的错误...


alt text

似乎是工作。我必须改变的第一件事是CountA - 9(不是CountA - 8)。接下来是“列偏移”(0,1,2,3,...)。也分开一些东西,使其更加划分(我必须培训别人如何做到这一点,她的报告需求)。

由于兰斯:)

+0

0时,保持相同的单元格引用,所以你的3个公式,你需要分别列参数更改为1,2,3的偏移量(你也放弃了括号关闭COUNTA声明。 – 2010-09-22 14:42:45

+0

是啊...我要更新我的答案,因为我再次重做一些东西,并得到它的工作 – WernerCD 2010-09-22 15:03:49

回答

3

如果图表是在相同的片材中的数据:

名称的数据(A2),为命名范围的第一个单元,说TESTRANGE。 创建了一个名为范围MYDATA为如下公式:

=OFFSET(TESTRANGE, COUNTA($A:$A) - 5, 0, 4, 2) 

现在,进入图表源数据对话框系列选项卡,并改变你的价值观声明:

=Sheet1!MYDATA 

现在每次你添加一个新的行,它会改变图表。

+0

明天我会测试这个:) – WernerCD 2010-09-21 22:08:42

+0

编辑问题与进一步的说明,和更多的信息。再次感谢OFFSET功能,它绝对看起来像是朝着正确方向迈出的一步。 – WernerCD 2010-09-22 14:08:54

+0

终于降落在答案(上面的基础知识)。谢谢吨:) – WernerCD 2010-09-22 15:10:50

0

我知道这是一个老问题,但我想分享一个可能更容易的替代方案。

将您的Quarter-Data范围更改为Excel表格。选择范围,然后按Ctrl + T。在插入表格中,确保选择了正确的数据范围,并且选中了我的表格有标题,然后按确定。这将简单范围转换为具有神奇属性的特殊数据结构。

然后创建一个新的范围,链接到此表的最后四行,并基于此新范围创建图表。如下所示。该表格是A1:B9中特别格式化的范围(您可以选择较少的脸上样式),绘图范围为D1:E5。

Range converted to Table, with plotting range and chart.

至D5中细胞D2的公式如下。复制D2:D5并粘贴到E2:E5中以完成绘图范围内的公式。

D2:= INDEX(表1 [季度],ROWS(表1 [季度]) - 3) D3:= INDEX(表1 [季度],ROWS(表1 [季度]) - 2) D4:= INDEX (Table1 [Quarter],ROWS(Table1 [Quarter]) - 1) D5:= INDEX(Table1 [Quarter],ROWS(Table1 [Quarter]))

Table1是分配给表的名称,Quarter是表格的第一列(也是列标题)的名称。你不需要输入所有这些,只需选择表中的列。当表格扩展或收缩时,表格1 [季度]跟踪这些变化。

现在添加一个新的数据点。表格扩大了,我们在D1:E5的小集结区域连接到表格的最后四行。

Table, plotting range, and chart, showing new last-four data points.

在我们添加年的数据,公式和图表跟上。

Table, plotting range, and chart, again showing new last-four data points.