エクセルのグラフの横軸の範囲の自動設定

このQ&Aのポイント
  • エクセルの表に上から順に、入力されたセルまでをグラフに表示する方法について教えてください。
  • 200-300個のデータに対応したグラフを自動で作成する方法を教えてください。
  • 最新の50個のデータをグラフ化する方法について教えてください。
回答を見る
  • ベストアンサー

エクセルのグラフの横軸の範囲の自動設定

お世話になっております。 前々から不便に思っていたのですが、今回他部署にエクセルの入力表を作成することになったので表題の設定方法につき教えて頂きたく。 エクセルの表に上から順に、例えばC列に値が入っていく場合、入力されたセルまでをグラフに表示したいのですが、年間で200-300個(行)になるので、最初から余裕をみて400行までのセルを指定すると、最初の方(データが数個の時)のグラフは左端に数個のデータのグラフになってしまいます。 これを自動で入力セルの個数に合わせたグラフにしたいのです。 以前より不便に思っていましたが、自分使用の場合はグラフの線をクリックして入力位置まで引っ張れば良かったので改善せずに使用していましたが、今回はファイルを人に渡すので何とかスマートにできないかと思い質問させていただきます。 更にはもし、同じ程度のレベルで可能なら、最新の50個のデータのグラフ化が出来れば理想的ですが、これは難しそうなので上記が解決してからにしたいと思います。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.3

再び失礼します。 で、もう一つ失礼しました。 OFFSET関数ですし、   OFFSET(基準, 行数, 列数, [高さ], [幅]) ですから、行数・列数を0(基準から動かない)にしてやれば -1とか考える必要は全くないですね。 つまり       =OFFSET(INDIRECT("Sheet1!$A$"&COUNTA(Sheet1!$A:$A)),0,0,-50,1) でいけますね。

akira0723
質問者

お礼

今落ち着いてオリジナルの表とコピー先の表を比較して気付きました。 単純にシート名と名前の定義の齟齬でした。 ということで問題は分かったので、とりあえず12枚のシートは作れそうです。 取りあえず至急でご報告まで。 ということでINDIRECTとの組み合わせ方(元のお知恵)の補足を頂きたく。  いつも何度もお手数をおかけします。

akira0723
質問者

補足

tsubu-yuki さん、(長文になってしまいました、失礼!) いつもお世話になっております。 昨夜、#No1さんのお知恵から、下記のような設定で当方の最低限の事が出来るところまで試行錯誤で確認しました。 エクセルシートで、入力エリア(スクロールします)と統計値(平均値、最大、最少値・・等々)とグラフで傾向が常に確認(枠固定)できるように画面を分割するとグラフ表示は下記のように最小限のものが良く。 <系列A> OFFSET(検査結果!$D$10,1,0,COUNT(検査結果!$D:$D)+5,1) (+5はグラフの右端を少し開けたくて) <グラフ系列を指定すると表示される式> SERIES(,,検査結果!系列A,1) 結局これだけで当方の目的のグラフが作成されるようですが、これにtsubu-yuki さんのお知恵を加えることがどうしてもできません。 そこで取りあえず入力シートを複数枚用意して、月ごと(50ロット程度)に分割して、1月―12月のシートで1つのエクセルbookに入力するようにしようかと思います。 最初は1年分/1シートで10シートで10年分のエクセルbookにしようかと思っていましたが、1年/1bookでファイル/年でも良いかと。 当方定年過ぎてからの仕事(統計管理)なので、10年分の入力シートが有れば十分かと?(今後10年以上同じ方法ではない、はず) ところが、このシートをコピーすると設定が変わってしまい、元のシートのグラフが作成されないことに気付きました。(詳細な設定後だったのでかなりのダメージ有り、「だれかたすけて~」状態) 詰まり、上記のシートのコピーの作り方を教えて頂ければ、非常に助かるのですが。 既に質問ではなく、誠に勝手なお願い、になってしまっていますが、当面の処置として何とかしたい(しなければ)なのでお手数ですが宜しくお願いします。 INDIRECTは表の交点をもとめるのに1年ほど前に、訳も分からず使って、そのシートは今も現役で用を果たしているのですが、当方応用力なく関数の組合せが出来ないので何ともひどいお願いになってしまいますが、出来ればお助け下さい。 但し、今回の他部署への管理表の提供ではなく、当方自身の既存の管理表(グラフ)で抱えている問題なので、グラフ表示のデータ個数の設定も近々(定年までに)何とかする必要があるので、見限らずにおつきあいお願いします。 現在は当方が定常的にメンテしている状況なので、これを機会にメンテ不要のひな形を作ってしまおうと思い質問させて頂きました。

その他の回答 (2)

回答No.2

横から失礼しますが・・・ > データの個数を決める(最新の50個程度)方法が無いでしょうか? 前のリンク先の「式の意味」は理解できていらっしゃいますか? ザクっと説明すると  ・COUNTA関数で有効データ(行)数をカウント  ・OFFSET関数で範囲を拡張   ただし、1行目は項目名なので、-1 ってことですね。 ちょっとした応用ですよ。 リンク先の説明は「起点がA1セルで、そこから最終行まで」でしたね。 今度は逆に「最終行を起点にして、そこから”上に”50行」で良さそうです。 一例として・・名前の「参照範囲」に   =OFFSET(INDIRECT("Sheet1!$A$"&COUNTA(Sheet1!$A:$A)-1),1,0,-50,1)    ※1行目が項目名なのでー1です。 こんな感じでどうかなぁ、と思いますが(笑)。 INDIRECT関数は馴染みがないかもしれませんね。 頑張って考えてみてくださいね。

  • chie65535
  • ベストアンサー率43% (8514/19356)
回答No.1

>これを自動で入力セルの個数に合わせたグラフにしたいのです。 以下参照。 http://officetanaka.net/excel/function/tips/tips71.htm

akira0723
質問者

お礼

ありがとうございました。

akira0723
質問者

補足

早々のご回答ありがとうございました! 早速やってみました。 試行錯誤の結果うまく行きました!! ところが、実際にデモでグラフにしてみると、やはり表示画面(決められた枠)の問題からデータが100個以上になってくると太い線のようになってしまい、傾向が見にくくなってしまいます。 贅沢のようですが、データの個数を決める(最新の50個程度)方法が無いでしょうか? 別の質問にした方が良いのかもしれませんが、お手数ですがもし当方でも可能なようならお手数をおかけしますが教えて頂きたく。

関連するQ&A

  • 横軸に範囲をとるExcelのグラフについて

    Excelでのグラフ表現についての質問です。 添付画像の左側のように、A列、B列にそれぞれ0~100までのいずれかの値が書かれたセルがあるとします。 このとき、右側のようにセルの値がある範囲内(今回の例の場合20ずつ)であるものの個数でグラフ(折れ線)を作りたいと考えています。 このように、横軸に固定の値ではなく「△~○」のように範囲を指定して、その範囲に該当するセルの個数を縦軸にしたグラフというのはExcelで作ることは出来るでしょうか? また、どのようにすれば実現出来るかも教えていただけると助かります。 よろしくお願いします。

  • エクセルのグラフの横軸をデータ数で自動化

    いつもいつも大変お世話になっております。 先日の質問時に具体的な表を添付しなかったために非常にお手間をおかけすることになってしまったので改めて具体的な表を添付して再度質問させていただきます。 左のボタンをクリックするとグラフが更新されて成績表の印刷ダイアログが表示されるようにしたいのです。(実際にはSheet2に作成されたグラフを確認してからマクロボタンでLOT Noをファイル名とした成績表がpdfで保存された後印刷することになります) グラフは品種によってはデータ数20個、30個、最大50個程度の最新のデータの動きを確認したいのです。 グラフ化の要素は品種により特性列を任意に2個選択したい。 実際にはこのブックにはHohoPapaさんに教わった保存時の入力済みセルの自動保護マクロ、pdf保存と印刷マクロ等が複数組み込まれていますのでこれとのバッティングも懸念されます。 (今回最初にグラフ作成マクロが動かなかった原因はこれでしたが、マクロの1行目に保護解除コードを1行入れたら解決) 前の質問の#1のご回答でデータ数が指定の個数より足りないケースでグラフ対象セルが上に突き抜けなければほぼ完ぺきなのですが。 何とかなりそうなら何卒よろしくお願いいたします。 (うまくグラフが添付されますように・・・)

  • エクセルでグラフの横軸が自動で伸びるようにしたい

    いつもお世話になっております。 エクセル2016です。 表からグラフを自動で表示して、データが増えるにしたがって横軸が伸びていくようにしたいのです。 1~2年前にNETで調べて名前の定義を使って試行錯誤の末何とか出来るようになったあのですが少し不具合(指定のセルと系列が違っている)があって弄っているうちに訳が分からなくなってしまいましたのでHELPです。 今使っている方法は名前の定義で下記の式を入れて OFFSET(入力表!$D$16,1,0,COUNT(入力表!$D:$D)+5,1) グラフの系列を選択して =SERIES(入力表!$D$12,,入力表!系列B1月,2) としているのですが、同じように系列を増やそうとしてもどうしてもうまくいきません。 どこを変えれば良いのか基本的なことが分かりません。 最初に作成したときのメモを見ながら試行錯誤したのですがお手上げ状態。 このやり方の修正、もしくはもっと簡単にできる方法は無いのでしょうか? この方法だと対象列が変わるたびに苦戦しそうです。

  • グラフの横軸目盛について(エクセル2007)

    グラフの横軸目盛がなぜか元データと合いません。 なぜでしょうか?原因と対処の方法をご存知の方 ご教示願います。 ●例) 表(A6セル)→2007年1月10日 グラフ(左端)→2007年1月1日 ●グラフの作成方法 1.(B5:B9)セルを範囲選択 2.「挿入」→グラフ(2-D縦棒)選択 3.グラフエリアを選択状態→「デザイン」→「データ」 4.「データソースの選択」→「編集」 5.(A6:A9)セルを範囲選択→OK 上記の作成方法でできた最初のグラフは、表と横軸目盛は 合致していましたが、グラフエリアの大きさを 任意に縮小していると、なぜか1900年になったり逆に拡大すると 2007年1月1日なったりしました。 エクセル2007でグラフの作成お詳しい方が、いらっしゃいましたら ご教示願います。なお画像を添付いたしますので ご参考にしていただければ幸いです。

  • Excelでのグラフ作成、データ範囲の設定について

    お世話になります。 Excel2003でのグラフ作成について、ご教示いただけたらと思います。 A列に日付、となりのB列に数値を入力していく形式で、 そのデータをグラフに反映させます。 毎日毎日、AB両列にデータが入力されていきますので、 グラフの「元のデータ」を、あらかじめ広く取ると Y軸に日にちが移動してしまい (しかもとんでもない日付に変わってしまいます。 おそらく、なんらかの数値がシリアル値となり、 日付表示されています)、グラフ全体がまったく変な物になってしまいます。 たとえば、「元のデータ」の「データ範囲」を、 数値が入力されているセルだけに設定すると、 Xに日付、Yに項目数値が来る正常なグラフになるのですが、 「データ範囲」に、無入力の行を含めると異常をきたす…といった感じです。 以前、これと同じような表とグラフを作成したときは、 あらかじめデータ範囲を広く取っておくことで、 グラフの右側に空白ができてしまうものの、 次々と最下部のデータの直下セルに入力していくと グラフにもリアルタイムで反映されるので便利だなぁ、と感じたことがありました。 なぜ、今回はうまくいかないのか、色々と試行錯誤してみましたが、 皆様のお知恵を拝借させていただくことに致しました。 稚拙な文章でお恥ずかしい限りですが、 どうぞよろしくお願いいたします。

  • エクセルのグラフの横軸の自動化

    以前ここでエクセルのグラフの横軸を自動で伸ばす方法を教えてもらってその時にはうまく行ったのですが、今回1系列だと出来るのですが、2系列目が同じように指定しているはずなのにエラーになります。 何度もお手数ですがどなたかHELPです。 先ずは名前の定義で「系列A」として=OFFSET(結果!$E$73,1,0,COUNT(結果!$E:$E),1)として、グラフの系列を選んで、SERIES(,,結果入力表.xlsm'!系列A,1)で系列Aはうまく行きました。 同じ要領で系列Bを名前の定義を列Fに変えて指定して、グラフ上で第2系列を選択して、SERIES(,,結果入力表.xlsm'!系列B,2)としたら、<参照が正しくありません。項目、値、サイズに対する参照は、1行または1列でなければなりません>というエラーメッセージが出ます。 何度か試行錯誤してみたのですが、何故”系列B”では駄目なのか分かりません。 基本的に系列の指定の仕方が分かっていないのだと思いますが、どなたか正解を教えてください。

  • エクセルのグラフの作り方

    エクセル2000を使用しています。 販売総数の推移を折れ線グラフで表したいと思っています。 セルには日別の販売個数が入力されていますが、それらを全選択して グラフウィザードでグラフ作成しても、日別の販売個数の変化しか 表現できませんでした。 どういう手順が必要でしょうか? ちなみにエクセル初心者です。

  • エクセルのグラフでデータ範囲を参照するには

    エクセルでグラフを作成した後に、データ数の変更等や データ範囲を変更などで、「データ範囲(D):」の入力範囲に 表のセルを指定したいのですがどうしてもうまくゆきません VBAやマクロを使用するのも敷居が高いし、どなたか教えて 頂けますでしょうか

  • エクセル2002でのデータの分布をグラフ化

    エクセル2002を使っています。 画像の様なデータがあり、数値が入力されています。 それをグラフ化したいのですが、条件があります。 全列のセルの中から、任意の数値の幅のセル数を数えて個数で表現したいと思います。 今回で言えば、入力のあるセル数が24個で出来上がりのグラフが 0~100まで⇒7個、29.1% 101~200まで⇒6個、25% 201~300まで⇒4個.16%  と言う風な物です。 ポイントは7個と29.1%がひとくくり、6個と25%がひとくくりになっていて、その部分が直感的に見やすいグラフが良いです。 詳しい方よろしくお願いいたします。

  • エクセル2007でのグラフ範囲の変更方法

    エクセル2007を使用しています。 エクセル2007で A列に日付 B列に個数 が入っており、折れ線グラフを作成しています。 A列の日付はすでに必要なだけ入っており、B列のみ更新する形になっています。 B列に個数を追加したときに、グラフの範囲をA列、B列とも個数入力行までに自動変更したいです。 VBAを使わず、関数だけでできる方法があれば押してください。 よろしくお願いします。

専門家に質問してみよう