一年を通してのデータのトレンドを確認したいというとき、データをグラフに表示しますよね。この時に問題になるのが、横軸の日付や時刻の取扱い。
Excelに準備されている「折れ線グラフ」を使った場合は、年、月、日単位で目盛りを選ばねばなりませんので、これより細かい「時間」単位や「分」単位で指示ができません。
では、時間単位や分単位でデータ範囲を指定したり、目盛をこれらの単位で設定するにはどうすればいいのでしょう?
今回は、Excelグラフで目盛りの日付や時間設定が自在にできる簡単な方法を紹介したいと思います。
効率よく日付や時間に対してデータをグラフ表示したいあなた!
是非この方法を参考にしてみてくださいね。
このページの中では、今回紹介する方法を組み込んだExcelファイルをダウンロードできる
ようにしています。
これを使えば、一からExcelを作り込む必要もありませんよ。ファイルを手にした瞬間、作業スピードは一気に早まります!是非使ってみてくださいね。
では本編スタートです!
Contents
『Excelグラフで目盛りの日付や時間を自由に設定する方法』とは?問題と解決方針を整理しよう!
今回フォーカスするのは、Excelグラフで、目盛りの日付や時間を設定するという煩雑な作業を簡単に行う方法。
データの時間変化をグラフ表示する時、「折れ線グラフ」を使用されている方が多いのではないかと思いますが、この場合、冒頭に書いたように、最小の目盛間隔が1日。
これより細かい時間間隔の指示ができません。グラフに表すデータの範囲も1日単位より大きな単位で選ばなければならず、思った通りのグラフを作れません。
ということで、「折れ線グラフ」を使うのを止め、別のグラフに乗り換えます!新たに使うグラフの種類は「散布図」!「散布図」を使ってデータの時間変化を上手にグラフに表示してしまいましょう!
「散布図」の場合の横軸は、日付や時刻をシリアル値という、あるルールに従った数字で指定しなければいけないという、多少面倒くさい面がありますが、今回紹介する方法を使えば簡単!
月単位でも、日単位でも、時間単位でも秒単位でも、あたなの思った通りのグラフが自在に作れちゃいますよ!
『Excelグラフで目盛りの日付や時間を自由に設定する』方法で使う関数VALUEとは?
今回は、ExcelにあるVALUEという関数を使います。この関数は、文字列で書いた日付や時刻をシリアル値にしてくれるもの。
使い方に一癖ありますが、使い方を覚えると便利ですよ。
では、次のようなグラフを編集したいとしましょう!
この状態から2017/3/1~2017/4/5のデータだけを表示する場合、横軸の最小値と最大値を設定しなければなりませんよね。これはいつものグラフの編集と同じ。設定に際して、2017/3/1と2017/4/5のシリアル値が必要になるのですが、ここで関数VALUEを登場させます。
(出典:気象庁ホームページ http://www.data.jma.go.jp/gmd/risk/obsdl/index.php)
では、この関数VALUEの使い方をみていきましょう。
最小値と最大値に設定したい日付を2017/3/1という形で、適当なセルを選んで書きましょう。そして、別のセルをさらに選択。ここに、日付を書いたセルがA1セルだった場合、
=VALUE(A1)
と書くと、2017/3/1に対応するシリアル値(42795等)が表示されます。
ここで1つ注意が必要なのですが、2017/3/1と書いたセルには書式設定が必要。書式設定って何?と思った方!安心して下さい。大した作業ではありません。書式設定の手順は次の通り簡単なものです。
セルを右クリックしてメニューを表示し、「セルの書式設定」を選択。下のように表示されるウインドウで、「文字列」を選んでOKするだけです。
同じ様にして、2017/4/5についてもシリアル値も求め、グラフの最大値、最小値をこれらの数値ににすると~じゃん!
このように、設定したかった2017/3/1~2017/4/5の範囲のグラフができます。上の図では、緑色のセルの書式が「文字列」になっていて、このセルに日付を書いています。緑のセルの右にある数字がシリアル値ですね。
この手順でシリアル値を求めれば、桁数の多いシリアル値をどこかにメモしたり、暗記したりしてグラフの設定することも必要なく、間違いも防げますよ。
なお、関数VALUEで時刻まで取り扱うときには、日付と時刻の間に、半角のスペースを入れた形式で「2017/3/1 10:00:00」というように緑色のセルにインプットすればOKです。
では次は、目盛の間隔の設定方法をチェックしていきましょう。
目盛りの間隔も同じようにシリアル値で指定します。
実はこのシリアル値、1という量が1日に相当し、基準となる日付が1900年1月1日の0時0分0秒というものなんです。
ですので、シリアル値が42795の2017/3/1は、1900年1月1日から42795日たった日ということを意味しているんですね。
意外と単純な数字でしょ?
1というシリアル値が1日を意味しますので、目盛間隔を1日としたい場合は、1と、5日刻みの場合には5と目盛を設定すればすればOK。
1分間隔の場合は、1分が何日に相当するかを考えて日単位で、1秒間隔の場合は、同様にこれを日単位で指定することになります。
この関係を式で書くと次の通り。これらの式で目盛間隔のシリアル値が求められます。
- 時間間隔の時:
=1/24*(時間に相当する数字)
- 分間隔の時:
=1/24/60*(分に相当する数字)
- 秒間隔の時:
=1/24/60/60*(秒に相当する数字)
下の図は、上で見てもらったグラフの表示範囲をさらに狭くし、目盛間隔を6時間にしたものです。上の1つ目の式を使って、0.25という6時間を日単位にしたシリアル値を求め、目盛間隔の設定に使いました。
まとめ
今回は、『Excelグラフで目盛りの日付を自由に設定したい』という課題に効率よく対処する方法を紹介しました。
この作業をする時のポイントは、
・「折れ線グラフ」ではなく、「散布図」を使う
・「文字列」に書式設定したセルに、日付を記入し、これをVALUE()の中に入れてシリアル値を求める
・求めたシリアル値でグラフを設定する
・目盛間隔は、秒や分、時間をシリアル値(1=1日=24時間=24*60分=24*60*60秒)にしたもので設定する
の4点です。
下で紹介するExcelファイルも是非お使いくださいね。一から作るより作業が効率化できると思います。
また、余力があったら、1日という量がシリアル値では「1」、1990年1月1日が起点で「1]と覚えてみてください。これだけでExcelでの日付の取扱いが怖くなくなりますよ!
ある機能をExcelで実現するとき、その方法は一つだけとは限りません。
ExcelVBAで使用できる機能をフルに使ってシンプルに作ることもできます。ただこれにはそれなりの勉強が必要。すぐには使えず、今すぐ問題を解決したいとい状況にはあいません。ですので、このブログで紹介するマクロは、できるだけ簡単なもの、VBAにそう詳しくなくても読めそうなもの、手を加えやすいものになるように心がけています。
マクロって難しそう、と敬遠していた方にマクロって意外とお手軽ね!と感じていただき、これを応用すればあの作業も自動化できるかも!と次のステップやアクションにつなげていただければと思います。
Excelのスキルを一気に向上させて、ライバルに差をつけたい、仕事を一気にさばいてスピードアップしたい、スキルを身に着けて転職や就職に役立てたいと思ったあなた!ぜひ下のボタンをクリックしてください!
募集締め切りが迫っているので、期間限定で「短期間で実力の向上が見込めるお手頃な方法」を紹介していますよ。
ホントは管理人Goも早く知りたかった!オンラインブートキャンプで、見やすいデータをより早く仕上げる Excel術をマスターしよう!
『Excelグラフで目盛りの日付や時間を自由に設定』できるExcelサンプルシートをプレゼント
今回紹介した関数VALUE、「散布図」を使って、思い通りの範囲、目盛刻みでグラフを描くことができるExcelシートを下のリンクからダウンロードすることができます。
graph_date.xlsx
お渡しするExcelファイルの中には、目盛間隔を分で設定した例、秒で設定した例もありますよ。
実際に動かしてみたり、あなたの課題にあわせてExcelを調整して作業時間短縮、効率化に役立ててみてください!
最新情報をお届けします
Twitter でExcel GO! GO!をフォローしよう!
Follow @go_excelコメント
この記事へのトラックバックはありません。
この記事へのコメントはありません。