Excel 2010 で動的な名前付き範囲を使用してグラフを作成する

Excel 2010 で動的な名前付き範囲を使用してグラフを作成する

動的な名前付き範囲を使用して Excel 2010 で散布図を作成しようとしていますが、うまくいきません。失敗している簡単な例を以下に示します。

  1. Excelを開いて新しいブックを開始します

  2. データを入力してください: セルA1:B5に入力された数値

  3. セル D1 に次のように入力します$A$1:$B$5。(実際のシートでは、これは動的に計算されますが、手動入力では依然として問題が発生します)。

  4. リボンで、[数式]、[名前の定義] の順にクリックします。以下に示すよう MyRange1に、シートのローカル名として定義します。=INDIRECT(Sheet1!$D$1)新しい名前ダイアログ

  5. [OK] をクリックし、散布図を挿入します。

  6. 「データの選択」ダイアログを開き、='Sheet1'!MyRange1 データ選択ダイアログ

  7. Excel がクラッシュします...

Microsoft Excel で問題が発生したため、終了する必要があります。

この問題は、Windows XP と Windows 7 の両方で Excel 2010 を使用して発生し、どちらの場合も毎回再現されます。


私も試しました:

  • x および y データに個別の範囲を定義し、[シリーズの編集] ダイアログを使用します。X='Sheet1'!MyXRange値フィールドに入力した後、Excel はダイアログを終了する Esc キーを除いてキーボードとマウスの入力を受け付けなくなります。ダイアログに戻ると、そのときにのみクラッシュします。

  • 名前付き範囲をワークシートではなくワークブックにスコープします。これによりクラッシュは実際に停止しますが、次のように入力するか、=MyRange1または入力するかに応じて、[データの選択] ダイアログでエラーが発生します='Sheet1'!MyRange1

参照が無効です。 このワークブック内の数式...


これは既知の問題ですか、それとも報告できる場所がありますか? 問題が 2010 に限定されているかどうかを確認するための Excel 2007 または 2003 がここにはありません。これが機能しない場合は、動的名前付き範囲の代わりに VBA を使用するだけでしょう。


更新: 解決したと思いました (回答を投稿しましたが、削除されました)。セル 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 Q&A サイト ダイナミックレンジの使い方の最新情報 - OZGrid

答え2

  1. 範囲を定義するために INDIRECT を使用すると、チャートは範囲を正しく使用しないことが多く、名前付き範囲を受け入れないこともよくあります。たとえば、INDEX や OFFSET を使用するなど、動的な範囲を定義するには、より優れた (より堅牢な) 方法があります。

  2. 名前がグラフで認識される場合でも、[データ ソースの選択] ダイアログの [グラフ データ範囲] ボックスでセル アドレスに変換されます。名前は、各シリーズの X、Y、およびシリーズ名の範囲にのみ保持されます。

  3. セル D1 で範囲の前にシート名を付けた場合はどうなりますか? グラフには完全修飾範囲が必要なので、セル D1 にシート名が含まれている場合は、[Sheet1!$A$1:$B$5データ ソースの選択] ダイアログの [グラフ データ範囲] ボックスで定義した名前を使用できます。ポイント 2 に従って、Excel は [OK] をクリックするとこの範囲をセル アドレスに変換することに注意してください。

答え3

動的なチャートを作成する方法は次のとおりです。

  1. データからテーブルを作成します。

    ここに画像の説明を入力してください

  2. テーブルをハイライトする

  3. 挿入タブに移動し、必要なグラフの種類を選択します。

ここに画像の説明を入力してください

テーブルにデータを追加すると、チャートにも更新されます。

ここに画像の説明を入力してください

関連情報