在 Excel 2010 中使用動態命名範圍建立圖表

在 Excel 2010 中使用動態命名範圍建立圖表

我正在嘗試使用動態命名範圍在 Excel 2010 中建立散點圖,但無法使其正常工作。這是失敗的簡單範例:

  1. 開啟Excel,開始一個新的工作簿

  2. 輸入一些數據: 在儲存格 A1:B5 中輸入的數字

  3. 在儲存格 D1 中,輸入:$A$1:$B$5。 (在我的真實工作表中,這是動態計算的,但手動輸入仍然有問題)。

  4. 在功能區上,按一下「公式」、「定義名稱」。使用如下所示 定義MyRange1為工作表本機名稱:=INDIRECT(Sheet1!$D$1)新名稱對話框

  5. 按一下“確定”,然後插入散佈圖。

  6. 開啟“選擇資料”對話框並輸入='Sheet1'!MyRange1 選擇數據對話框

  7. Excel 崩潰...

Microsoft Excel 遇到問題,需要關閉。

該問題在 Windows XP 和 Windows 7(帶有 Excel 2010)上都會出現,並且每次都會重複。


我也嘗試過:

  • 定義 x 和 y 資料的單獨範圍並使用「編輯系列」對話方塊。輸入 X 值欄位後='Sheet1'!MyXRange,Excel 將停止接受鍵盤和滑鼠輸入,但退出對話方塊的 Escape 鍵除外。如果我回到對話框,它就會崩潰。

  • 將命名範圍的範圍限定為工作簿而非工作表。這實際上確實阻止了崩潰,但根據我是否鍵入=MyRange1或,我在“選擇資料”對話框中收到錯誤='Sheet1'!MyRange1

參考無效。 本工作簿中的一個公式...


這是一個已知問題,還是有地方可以報告它?我這裡沒有 Excel 2007 或 2003 來檢查問題是否與 2010 年無關。


更新:我想我已經弄清楚了(我發布了一個答案,現在已刪除)。我將儲存格 D1 = $A$1:$B$5 中的值變更為 D1 = 'Sheet1'!$A$1:$B$5,並且圖表已正確建立。然而,圖表創建時似乎不是動態的——它只是使用當前值來創建 X 和 Y 系列,因此更改 D1 不會使圖表更新。

答案1

根據下面的連結和我個人的測試,您必須以以下形式輸入資料系列

'WorkbookName.xls'!RangeNameX

如果您的名字是動態的,那麼產生的圖表也會是動態的。我用於動態命名範圍的公式是(根據您的情況進行修改並用於 X 和 Y 範圍)。

=OFFSET($A$1,0,0,MATCH(1E+306,$A:$A,1),1)

就向圖表添加新附加的值而言,這可以使圖表動態化(在更新圖表之前需要 X 和 Y 值)。

有關如何設定圖表的來源 - Microsoft 問答網站 熱門使用動態範圍的來源 - OZGrid

答案2

  1. 當使用 INDIRECT 定義範圍時,圖表通常不會正確使用範圍,甚至通常不接受這些命名範圍。有更好(更穩健)的方法來定義動態範圍,例如使用 INDEX 或 OFFSET。

  2. 即使圖表可以識別該名稱,它也會轉換為「選擇資料來源」對話方塊的「圖表資料範圍」方塊中的儲存格位址。名稱僅保留在 X、Y 和每個單獨系列的系列名稱範圍內。

  3. 如果在儲存格 D1 中使用工作表名稱作為範圍前綴?圖表需要完全限定的範圍,因此如果儲存格 D1 包含Sheet1!$A$1:$B$5您可以在「選擇資料來源」對話方塊的「圖表資料範圍」方塊中使用您定義的名稱。請注意,對於第 2 點,當您按一下「確定」時,Excel 會將此範圍轉換為其儲存格位址。

答案3

這是我創建動態圖表的方法。

  1. 根據您的資料建立一個表格。

    在此輸入影像描述

  2. 突出顯示表格

  3. 轉到插入選項卡並選擇所需的圖表類型。

在此輸入影像描述

當您將資料新增至表格時,它也會更新到圖表中。

在此輸入影像描述

相關內容