[[20120920201205]] 『計算式のあるグラフ』(えむ・けー) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『計算式のあるグラフ』(えむ・けー)

お世話になります。
C列((C2〜C14)※C14は累計)に昨年実績12ヶ月分がすでに入力してあり、A列にはIF(B2="","",C2)〜IF(B13="","",C13)、A14には累計。また、B列には今年の実績を直接入力するようにしています。この状態でA列(前年)・B列(今年)の実績を折れ線グラフにするとまだ経過していない月にも計算式が入力されているためグラフに表示されてしまいます。それを経過月(要するにB列に直接入力した分)だけをグラフとして表示する方法はありますか?※前年分は12ヶ月分を表示したとしても今年分だけは経過月だけをグラフに表示したいと考えております。
良い方法があれば教えてください。


 =IF(B2="",NA(),C2)

 (GobGob)

 あぁ・・・勘違いっすね。。。。

 先ほどの回答、却下で。

 (GobGob)

	A	B	C
1		計画	実績
2	4月	1	5
3	5月	2	4
4	6月	3	3
5	7月	4	2
6	8月	5	1
7	9月	6	
8	10月	7	
9	11月	8	
10	12月	9	
11	1月	10	
12	2月	11	

 C列は使いまへん。B列に計画、C列に実績。全て直接入力。

 A:C列で折れ線グラフを作成。

 「挿入」→「名前」→ 「定義」で
 @ 名前を「Sheet1!計画」 範囲を 「=OFFSET($B$2,0,0,COUNT($C:$C))」
 A 名前を「Sheet1!実績」 範囲を 「=OFFSET($C$2,0,0,COUNT($C:$C))」と設定。
 注意:シート名+! を忘れずに。

 折れ線グラフの「計画」の系列を選択すると数式バーに
 =SERIES(Sheet1!$B$1,Sheet1!$A$2:$A$13,Sheet1!$B$2:$B$13,1)
 と表示されるので
 =SERIES(Sheet1!$B$1,Sheet1!$A$2:$A$13,Sheet1!計画,1)
 と変更。

 同様に「実績」系列を選択すると数式バーに
 =SERIES(Sheet1!$C$1,Sheet1!$A$2:$A$13,Sheet1!$C$2:$C$13,2)
 と表示されるので
 =SERIES(Sheet1!$C$1,Sheet1!$A$2:$A$13,Sheet1!実績,2)
 と変更。

 (GobGob)

(GobGob)さん
ありがとうございます。

恐縮ですが私があまり詳しくないためによくわかりません。
質問内容を少し変えて再度確認をさせて頂いてよろしいでしょうか?
まず、A列に昨年実績、B列には今年実績とします。そしてB列の今年実績は他のSheetとリンクさせており、経過していない月の分(たとえば今年9月分の実績がSheet1!C7であれば=Sheet2!C7)にも式が入力されているため、未経過月の分まで折れ線グラフに表示されてしまいます。したがって未経過月分を表示しないようしたいという内容です。

 また、「挿入」→「名前」→ 「定義」で
 @ 名前を「Sheet1!計画」 範囲を 「=OFFSET($B$2,0,0,COUNT($C:$C))」
 A 名前を「Sheet1!実績」 範囲を 「=OFFSET($C$2,0,0,COUNT($C:$C))」と設定。
とご説明頂いておりますが、このことが理解できません。どこのどういう操作のことでしょうか?
たいへんお手数をお掛けしますがよろしくお願いいたします。
(えむ・けー)


 B列がどのシートから引っ張って来てもいいよ。
 あくまで「グラフ」の元データがどのシートにあるか?だからね。

 では、例として・・・
 ●グラフ化したいデータが「グラフシート」というシート名
 ●データ範囲が 計画 A2からスタートで下へデータ、 実績 B2からスタートで下へデータ。
 として。

 ◎設定する前にまずグラフを作成しておく。
   この時点ではX軸はまだ計画分出来ちゃう状態となってますな。

 X軸を実績範囲までとするため範囲を可変にする設定。
 まず「計画」のデータ範囲を設定。

 @メニューバーの「挿入」から「名前」を選択するとサブメニューに「定義」があるんでそれを選択。
 Aダイアログが開くので「名前」の入力欄に Sheet名+!+計画 を入力。
   ※例ではグラフシートというシート名なので グラフシート+!+計画 → グラフシート!計画 と入力
 B参照範囲の入力欄に =OFFSET($A$2,0,0,COUNT($B:$B)) という「数式」を入力。
   ※これはB2セルから列にC列(実績)の数値データ分を範囲にしなさい!という設定。
   「=」もちゃんと入力してね〜
 C「追加」ボタンを押す。(ダイアログはまだ閉じない)

 これで「計画」のデータの範囲設定完了。続いて「実績」

 D引き続き「名前」の入力欄に Sheet名+!+実績 を入力。
   ※例ではグラフシートというシート名なので グラフシート+!+実績 → グラフシート!実績 と入力
 E参照範囲の入力欄に =OFFSET($B$2,0,0,COUNT($B:$B)) という「数式」を入力。
   ※C2セルから列にC列(実績)の数値データ分を範囲にしなさい!という設定。
 F「追加」ボタンを押したあと「OK」を押して名前定義終了。

 これで「実績」の範囲設定も完了。

 続いて先立って作ってたグラフから「計画」の折れ線グラフ部をクリックすると
 数式バーに 
 =SERIES(,,グラフシート!$A$2:$A$13,1)
 と、数式がでてくるね。

 SERIES関数はグラフ用の関数で、引数は
 =SERIES(系列名,ラベルの範囲,グラフデータの範囲,系列順序)
 という感じなので第3引数の「グラフデータの範囲」をセル範囲から先程の可変する範囲に
 設定し直す必要があるんでこの第3引数を

 グラフシート!$A$2:$A$13 → グラフシート!計画 (先程名前設定した範囲)に変更。
  =SERIES(,,グラフシート!計画,1)

 これで、「計画」のデータ範囲が実績に応じて可変するよ。

 同様に「実績」系列を
 =SERIES(,,グラフシート!実績,2)

 とすればOK

 (GobGob)


(GobGob)さん
ありがとうございます。

たいへん申し訳ないのですが、
最初からでつまずいております。
グラフの作成方法が違うかもしれません。
私は、データ範囲(A列とB列)を指定して「挿入」から折れ線グラフを選択することで計画と実績をグラフ化しております。

 ◎設定する前にまずグラフを作成しておく。
 この時点ではX軸はまだ計画分出来ちゃう状態となってますな。とは、

 B列に実績を入力していない状態のことでしょうか?

 また、何よりも@メニューバーの「挿入」から「名前」を選択するとサブメニューに「定義」があるんでそれを選択。とありますが、
「挿入」にはテーブル、図、グラフ、リンク、テキストはあるものの「名前や「定義」を選択するようなものは見当たりません。

(えむ・けー)


 >B列に実績を入力していない状態のことでしょうか?

 深く考えないでね。単純にA列〜B列をグラフ化。操作はそれで良いよ。
 早い話が「経過してない月分も表示」されているグラフを作成する。→ 現在の状況を言ってるだけ。

 >また、何よりも@メニューバーの「挿入」から「名前」を選択するとサブメニューに「定義」があるんでそれを選択。とありますが、
 >「挿入」にはテーブル、図、グラフ、リンク、テキストはあるものの「名前や「定義」を選択するようなものは見当たりません。

 これはグラフエリアのオブジェクトが選択されているから。
 なんでもいいんでどこかのセルを選択してから 挿入 名前 定義 してちょ。

 (GobGob)


 操作の手順は

 @とりあえずグラフを作成する。

 A作成後どこかのセルを選択し、グラフオブジェクトを選択してるのを解除する

 B名前定義の設定をする

 Cグラフエリアを選択して、各系列のグラフを選択し数式バーを変更する。

 この流れ。どす。

 (GobGob)

(GobGob)さん
ありがとうございます。
丁寧にアドバイス頂いたのですが、やはり@メニューバーの「挿入」から「名前」を選択するとサブメニューに「定義」・・・とういうのがどこのことを言われているのかさっぱりわかりません。
昨日からだいぶお時間を頂いており、申し訳ないので一旦諦めます。もう少しグラフ作成そのものを理解した上で再度質問させて頂きます。
本当にお世話になりました。
(えむ・けー)

 もしかして・・・Excel2007以降?

 なら、「挿入」⇒「名前」⇒「定義」でなくて
 「数式」⇒「名前の定義」。

 シート名+!+名前 設定でなく 
 「名前」に素直に「計画」とか「実績」のみ入力。
 「範囲」に対象シートを指定。
 「参照範囲」に数式

 あとの処理は同じだよん。

 (GobGob)

コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.