[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『沢山のデータの中の任意範囲のグラフ表示』(Cha2)
ということならば、データの中で100日分を選択しグラフを作成します
出来たグラフを選択すると、データが青いカラーリファレンスで囲まれているはずです
このカラーリファレンスを、マウスで移動させると グラフに反映されます
>”1”を入力するとその行番号起点で100日分のグラフを表示したいのですが
これは、簡単ではありません
ジーコ
グラフを作るための100日分のデータ引用場所を確保し その範囲でグラフを作成。 A列の「1」と入力された行から100日分のデータを データ引用場所に表示すれば良いのでは? 例えば↓の様な感じで。 [A] [B] [C] [D] [E] [F] [G] [1] フラグ 番号 項目 データ 項目 データ [2] 1 A 10 F 60 [3] 2 B 20 G 70 [4] 3 C 30 H 80 [5] 4 D 40 I 90 [6] 5 E 50 J 10 [7] 1 6 F 60 [8] 7 G 70 [9] 8 H 80 [10] 9 I 90 [11] 10 J 10 [12] 11 K 11 [13] 12 L 12 C:D列が元データです。 B列は通し番号です。 A列にフラグをたてます。 F1:G6がグラフ作成用のデータです。 この範囲を使用したグラフを作成します。
F2に =VLOOKUP(VLOOKUP(1,$A:$B,2,0)+ROW(A1)-1,$B:$D,COLUMN(B2),0) として、G6までフィルドラッグしてください。 A列の「1」を入力した行から、5行分のデータがF2から表示され この場所を参照して作ったグラフもそれに伴い変化すると思います。
(HANA)
ありがとうございます。(HANA)さんの内容にてトライしてみます。 日頃使用していない関数ですので勉強して、、、。 後日、ご報告させて頂くつもりです。 (Cha2)
お世話になりました。 満足出来るグラフが見れる様になりました。 関数を充分理解出来なかったので少し残念ですが、、、。 使ってみて気付いたのですが、 A列のフラグ”1”を入れると、以前に入れたフラグが自動的に 消えてくれるといいナア〜と思いましたが、 出来れば、教えて頂ければ幸いです。(CHa2)
セルの内容を自動的に消すのはマクロの領分になりますので 「フラグを立てる」と言う考え方を変更してみるのはどうでしょう。 ●日付が連続していない 時の式です。連続しているなら式は少し簡単になると思います。
A列にフラグを立てるのではなく、どこかのセルに どの日付からの100行をグラフにするのか 日付を入力します。
先のサンプルデータでは、項目が文字なので 文字を入力しますが、お使いのデータは日付でしょうから 実際は日付を使って下さい。
A,B列は不要になるので データをA列から表示し C1セルを「日付を入力するどこかのセル」にします。 [A] [B] [C] [D] [E] [1] 項目 データ G 項目 データ [2] A 10 G 70 [3] B 20 H 80 [4] C 30 I 90 [5] D 40 J 10 [6] E 50 K 11 [7] F 60 [8] G 70 [9] H 80 [10] I 90 [11] J 10 [12] K 11 [13] L 12 D2に =INDEX(A:A,MATCH($C$1,$A:$A,0)+ROW(A1)-1) として、E6までフィルドラッグしてください。
(HANA) フィルドラッグの範囲はG6ではなくE6でしたね。訂正しました。0:40
早速に、ありがとうございます。 迅速な対応、恐縮しています。 前回は表示データが数項目、分散列状態で有り、 別シートに抽出データとグラフを表示させた為に少し苦労しましたが 今回はどうかな?? 前回同様、関数の意味も勉強しないと解りません。 数年分のデータが有り、入力自体はフラグ方式の方がラクチンかも しれないナと思ったりしていますが とにかく、勉強の意味も含めてトライして見ます。 また少し時間を下さい。(Cha2)
・・・色々あるのですね。 とりあえず >前回は表示データが数項目、分散列状態で有り これは、どういったことですかね? シートの状況と、どんなデータ(どんな値が)存在するのか 説明して頂けると考えやすいのですが。
少し式の解説でもしておきましょうか? まず最初のこの式ですが =VLOOKUP(VLOOKUP(1,$A:$B,2,0)+ROW(A1)-1,$B:$D,COLUMN(B2),0) VLOOKUP関数はお分かりですよね? ●VLOOKUP(検索値,範囲,列番号,検索の型) 内側のVLOOKUP関数は ○VLOOKUP(1,$A:$B,2,0) A列から「1」を探して、その隣の数字を返します。 隣の数字は、通し番号なのでこれで求まった数字は 「何番目のデータが先頭か」を表します。 例えばこれが【6】だったとします。(A7に「1」が入った状態) 外側のVLOOKUP関数は ○VLOOKUP(【6】+ROW(A1)-1,$B:$D,COLUMN(B2),0) ~~~~~内側のVLOOKUP関数の部分です。 ROW関数は()内に入っているセルが何行目のセルなのか COLUMN関数は、何列目のセルなのか、それぞれ返します。 ROW(A1)を縦方向へフィルドラッグすると、「1,2,3・・・」 COLUMN(B2)を横方向へフィルドラッグすると「1,2,3・・・」 と言う数字を返します。 (実際にセルに式を入れてフィルドラッグしてみてください。)
F2セルに入った式は、それぞれの関数を数値になおすと VLOOKUP(【6】+『1』-1,$B:$D,≪2≫,0)=VLOOKUP( 6 ,$B:$D, 2 ,0) これを下にコピーした時は、ROW関数の方のみ変化して VLOOKUP(【6】+『2』-1,$B:$D,≪2≫,0)=VLOOKUP( 7 ,$B:$D, 2 ,0) 横にコピーしたときは、COLUMN関数の方のみ変化して VLOOKUP(【6】+『1』-1,$B:$D,≪3≫,0)=VLOOKUP( 6 ,$B:$D, 3 ,0) となります。
次に =INDEX(A:A,MATCH($C$1,$A:$A,0)+ROW(A1)-1) こちらの式は MATCH関数で、C1セルの値がA列の何番目にでてくるか求めます。 これも「+ROW(A1)-1」を使って下にコピーした時に一つずつプラスしていきます。 INDEX関数で、D列はA列の値の、E列はB列の値の 先頭から指定した場所にある値を返します。
(HANA)
早速にご親切本当にありがとうございます。 >前回は表示データが数項目、分散列状態で有り、、、、 は、上記[B]列データに相当する列が付近他列に、計3列有り それを同時にグラフ表示(グラフでいう”系列”)させました。 別の列に纏めて表示すれば済む内容ですが、 勉強の意味や、やたらデータ列を増やしたくないので そうしました。 ご教授いただいた上記の内容は未だ読んでいませんので 後日、報告させて頂くつもりです。 取り急ぎ御礼迄。 (Cha2)
先にも書きましたが 「セルの内容を自動的に消すのはマクロの領分になりますので」 状況をお尋ねしたのですが・・・ なんだかグラフ範囲の条件が色々ありそうですね・・・。
VLOOKUP関数は、同じ値が有った場合一番最初にマッチしたデータを拾います。 例えば、フラグとして常に「1」を利用するのではなく 少しずつでも数の大きい数字を利用する事にすれば A列の最大値は「MAX(A:A)」の式で求められます。 この数字をVLOOKUP関数の検索値として利用すれば それより小さい値のフラグを消す必要は無くなります。
現在どの数字までを使ったか、分かっている必要があるので どこかのセルに「MAX(A:A)」の戻り値を表示しておくのが良いと思いますが。
そうそう、先頭に半角スペースを入れると 改行がそのまま反映されますよ。 _←この部分に半角スペース。
(HANA)
(HANA)さん ・上記内容も、種々活用できそうです。 ・文章が改行されてなく失礼しました。 全角スペースを入れてしまった様です。 重ねて御礼申し上げます。 (Cha2)
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.