【エクセル技道場】No.353 可変範囲のグラフ
----------------------------------------------------------------------
レンタルサーバ選び...価格や機能だけで選びますか?
『ヘルプデスクが親切でわかりやすかった:83%』
安心と基本性能を重視したレンタルサーバはこちらです
http://m.parkfield.co.jp/R/J.asp?X=56&Y=9
----------------------------------------------------------------------
■【エクセル技道場】No.353 2002/ 7/19 発行部数:14,718 不定期
■ http://www2.odn.ne.jp/excel/ まぐまぐID: 31665
◇可変範囲のグラフ
【問題】
A1:B5に以下のデータが入っています。
item data
a 1
b 2
c 3
d 4
これで棒グラフを作成すると以下のようになります。
| |
| ■|
| ■■|
| ■■■|
|■■■■|
a b c d
これに例えば、A6:B6にデータを追加して
item data
a 1
b 2
c 3
d 4
e 5
になると、追加されたデータを自動的に反映してグラフが以下のようになるにはどう
すれば良いでしょうか?
| ■|
| ■■|
| ■■■|
| ■■■■|
|■■■■■|
a b c d e
なお、グラフのデータ範囲をあらかじめ広くとっておく(例えばA1:B6)と、
| |
| ■ |
| ■■ |
| ■■■ |
|■■■■ |
a b c d
のようになりますが、A6:B6にデータが入力されていない時は、
| |
| ■|
| ■■|
| ■■■|
|■■■■|
a b c d
と表示させたいのです。つまりグラフのデータ範囲を可変にしたいのです。
それから、マクロは使いません。
===[ ▼PR ]=========================================================
☆☆☆☆『ディズニーの英語システム』無料サンプルプレゼント!☆☆☆☆
0〜6才のお子さまをお持ちの方(マタニティ含)にディズニーキャラクター
がたくさん登場するかわいい絵本とCDの無料サンプルをプレゼント!25周年
記念限定の人気の歌が映像で楽しめる「DWEおためしビデオ」もプレゼント!
http://211.10.20.135/a/a.cgi?k03735m01057
========================================================[ ▲PR ]====
【エクセル技道場】 あなたの知りたいエクセルの技がここにある
http://www2.odn.ne.jp/excel/
【回答】
ファイル名が dynamic だとします。
まずは名前定義です。
1.Ctrl+F3(メニュー[挿入]-[名前]-[定義])
2.[名前]に label と入力
3.[参照範囲]に =$A$2:INDEX($A:$A,COUNTA($A:$A)) と入力
4.[追加]ボタンをクリック
5.[名前] value と入力
6.[参照範囲]に =$B$2:INDEX($B:$B,COUNTA($B:$B)) と入力
7.[OK]ボタンをクリック
グラフを作成します。
1.A1:B5内のセルどれかを選択
2.メニュー[挿入]-[グラフ]
3.[次へ]ボタンをクリック
4.[系列]タブで[値]に =dynamic.xls!value と入力
5.[項目軸ラベルに使用]に =dynamic.xls!label と入力
6.[完了]ボタンをクリック
===[ ▼PR ]=========================================================
★私にもできた!★アルクの英会話入門講座の決定版イングリッシュキング
こんな人にオススメ1 ⇒ 「英語を基礎からやり直したい」
こんな人にオススメ2 ⇒ 「英会話にまったく自信がない」
1日20分×週3日の学習でOK! 受講は1ヵ月4,000円(税別)
10日間の試聴が可能⇒ http://211.10.20.135/a/a.cgi?k03645Bm01057
========================================================[ ▲PR ]====
【解説】
サンプルファイルを用意しました。
↓の新着情報から開けます。
http://www2.odn.ne.jp/excel/
○○ あとがき ○○
こんにちは
今回の問題の回答を募集しておりましたが、回答をお寄せいただいたのは、浅野さ
んお一人だけでした。
浅野さんよりいただいた詳細なメールを以下にご紹介させていただきます。
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
janmaさん、こんにちは。浅野です。ご無沙汰しています。
【次回の問題】に対する私の解答です。
----------------------------------------------------------------
Sheet1 のセル範囲 A1:B5 に
item data
a 1
b 2
c 3
d 4
というデータが入っている場合、セル範囲 A1:B5 を選択して、グラフ
ウィザードを使って棒グラフを作成すると、データ系列を表す式は、次
のようになります。
=SERIES(Sheet1!$B$1,Sheet1!$A$2:$A$5,Sheet1!$B$2:$B$5,1)
そこで、[挿入] - [名前] - [定義] メニューで、
[名前] Sheet1!item
[参照範囲] =OFFSET(Sheet1!$A$1,1,0,COUNTA(Sheet1!$A:$A)-1,1)
[名前] Sheet1!data
[参照範囲] =OFFSET(Sheet1!$A$1,1,1,COUNTA(Sheet1!$A:$A)-1,1)
という2つの名前を定義し、データ系列の式を以下のように修正します。
=SERIES(Sheet1!$B$1,Sheet1!item,Sheet1!data,1)
これでグラフのデータ範囲を可変にすることができます。
しかし、項目軸のデータである item 列の中間に空白データが含まれる
場合、この方法はうまくいきません。この場合に対応するには、名前の
定義を以下のようにします。ただし、この方法を用いることができるの
は、item 列の下端のデータが文字列である場合に限ります。
[名前] Sheet1!item
[参照範囲] =OFFSET(Sheet1!$A$1,1,0,MATCH("",Sheet1!$A:$A,-1)-1,1)
[名前] Sheet1!item
[参照範囲] =OFFSET(Sheet1!$A$1,1,1,MATCH("",Sheet1!$A:$A,-1)-1,1)
----------------------------------------------------------------
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
【エクセル技道場】 あなたの知りたいエクセルの技がここにある
http://www2.odn.ne.jp/excel/
最近は「答えてねっと」でよく回答つけています。
読者の皆様もエクセル関係でわからないことがありましたら、「答えてねっと」で
質問されてみてはいかがでしょうか?
答えてねっと http://www.kotaete-net.net/
「「答えてねっと」は、マイクロソフト製品をはじめとした、パソコン一般に関する
トラブルや疑問などを、24 時間いつでも無料でご利用いただけます。」
■■■■■掲載内容に起因する問題の責は負いかねます。
■本誌の転載等は非商用利用に限ります。出典明記でお願いします。
■解除■まぐまぐ: http://www.mag2.com/m/0000031665.htm
■発行者:janma
■■■■■【エクセル技道場】 http://www2.odn.ne.jp/excel/


![転職なら[en]社会人の転職情報!転職成功者続出 転職なら[en]社会人の転職情報!転職成功者続出](http://kamogawa.mag2.com/bn/recommend/sya.gif)
![派遣のお仕事探しなら[en]派遣のお仕事情報 派遣のお仕事探しなら[en]派遣のお仕事情報](http://kamogawa.mag2.com/bn/recommend/haken.gif)
![アルバイト探しは[en]本気のアルバイト アルバイト探しは[en]本気のアルバイト](http://kamogawa.mag2.com/bn/recommend/baito.gif)
![就職サイトは[en]学生の就職情報 就職サイトは[en]学生の就職情報](http://kamogawa.mag2.com/bn/recommend/gakusei.gif)
![転職なら[en]転職コンサルタントキャリアを活かした転職に! 転職なら[en]転職コンサルタントキャリアを活かした転職に!](http://kamogawa.mag2.com/bn/recommend/consul.gif)