我有一朋友,是做銷售的。他利用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函數指向第一個數值數據,如果指向了第一個非數值數據,那麼自動更新就無從談起了。
圖5