我有一个做销售的朋友。他用Excel图表记录每天的销售结果。那天他打电话来问了一个问题:用Excel记录每天的销售额很方便,可以直观的显示每天的销售结果,但是因为每天都有新的数据,我每天都要手动更改图表来包含新的数据。当我输入新数据时,有没有办法自动更新图表?下面的方法将为他解决这个问题。
在Excel 97及以后版本中,当选中一个图表数据系列时,工作表中与该数据系列对应的数据区域周围就会出现边框,这时可以通过简单地拖拽区域边框的角点来扩展数据区域。本文采用的方法是用公式来定义一个动态的数据范围以创建图表,从而实现在输入数据时图表能够自动更新,而不必手动更改数据区域的范围。
具体操作步骤如下:
1.输入数据并创建图表,如图1所示(下载练习用Excel工作簿)。
图1
2.选择菜单命令“插入>名称>定义”,打开“定义名称”对话框。在“在当前工作薄中的名称”下方输入框中输入“日期”,在“引用位置”下方输入框中输入公式“=OFFSET(Sheet1!$A$2,0,0,COUNTA(Sheet1! $A:$A)-1)”,单击“添加”按钮来添加日期,如图2所示。
图2
注意:OFFSET函数中引用的是第一个数据点(单元格A2)并且用COUNTA函数来取得A列数据点的个数。因为A列中包含一个非数值数据“日期”,所以在公式中减去1。
3.在“定义名称”对话框继续定义名称。在“在当前工作薄中的名称”下方输入框中输入“销售”,在“引用位置”下方输入框中输入公式 “=OFFSET(Sheet1!$B$2,0,0,COUNTA(Sheet1!$B:$B)-1)”,单击“添加”按钮,如图3所示。然后单击“确定”按钮关闭对话框。
图3
4.激活图表并选中数据系列,可以看到在编辑栏中的未更改公式是这样的:=SERIES(Sheet1!$B$1,Sheet1!$A$2:$A$10,Sheet1!$B$2:$B$10,1),下面这一步很关键,我们要做一个替代,现将公式更改如下:=SERIES(,Sheet1!日期,Sheet1!销售,1),如图4所示。在更改后的公式中可以看到我们在第二步和第三步中定义的名称:日期和销售。
图4
做完以上工作,朋友的问题便得到了解决。当我们输入新数据时,图表会自动更新,赶紧试一下吧。如图5所示,加上了2月10日的销售,图表就自动更新了。最后需要注意的是,在使用OFFSET函数时,一定要将COUNTA函数指向第一个数值数据,如果指向了第一个非数值数据,那么自动更新就无从谈起了。