
今回の記事では
Excelで日付を入力しているけど思い通りに扱えないのはどうして?
もう少し日付をちゃんと使いこなすにはどうしたら良いの?
日付とセットで曜日も表示したいけど直接入力するのは大変
何とか関数とかを使って自動的に表示する方法って無いの?
こういった疑問に答えます
✔日付と曜日の取り扱い方のテーマ
①日付の正体がシリアル値という数字だと分かると日付は扱いやすくなります
②曜日と日付を自動的に切り替えるには表示形式の設定を知ることが大切です
この記事を書いているのはOfficeを約20年間活用しながら
ITを活用したエステの経営マネジメントしている私の経験を基に
「日付と曜日の取り扱い方のテーマ」に関して実体験に基づいて解説しています
今回の内容を一緒にやりたい場合は▼のファイルをダウンロードして下さい
目次を使って読みたい項目へ
日付の正体がシリアル値という数字だと分かると日付は扱いやすくなります
日付の正体がシリアル値だということが分かっていないと日付の扱いに苦労します
なぜなら、シリアル値は1900年1月1日からずっと続いている数字だからです
Excelで日付と上手に付き合っていくには日付の正体をしっかりと知っておく必要があります
シリアル値をキチンと理解しておかないと後々、日付に苦労させられるのでまずは基本を押さえておくことが大切です
では、日付の基本から解説していきましょう

Excelでは日付をこんな風にシリアル値という「1900/1/1」を起源に1日ずつ足していった数字で管理されています
日付・シリアル値どちらも内容は同じですが表示方法を変えてそれぞれ表示しています
見て分かるように「1900/1/1」をシリアル値として表示すると「1」だということが分かりますよね
一方「2022/2/1」のシリアル値は「44593」なので「1900/1/1から44593日後」がこの日ということになります
では日付をシリアル値として表示する方法とその逆の設定方法を確認しておきましょう

まずはシリアル値を日付に変更してみましょう
やり方はものすごく簡単です
「ホームタブ」の「数値グループにある数値の書式ボックス」をクリック
一覧の中から「短い日付形式」をクリック

無事に日付として表示されました
ここまではすごく簡単ですよね
では続いて日付を再度「シリアル値」に戻してみましょう

日付に変えた時と同じ手順で今度は「標準」をクリック

これでシリアル値として表示されました
特に難しいことは何も無かったですよね
この日付がシリアル値で出来てるということは、日付を扱っていく上で重要な考え方になってくるので、基礎知識としてしっかり押さえておくことが重要です
では日付の取り扱いの時のもう少し応用した使い方をしてみましょう
まずは、日付から年月日をそれぞれ取り出す方法を見ていきましょう

日付から年月日を列に分けて取り出しました
もちろん直接入力した訳ではありません
それぞれの分け方について順番に見ていきましょう
YEAR関数で「年数」を取り出す
日付から年数を取り出すには「YEAR(イヤー)関数」を使います
使い方はすごく簡単なのですぐに覚えられますよ
では、実際の使い方を見ていきましょう

設定方法はこれだけです
設定内容は「=YEAR(A5)」で「A5のセルから年数だけ取り出して表示してね」という意味です
すごく簡単に年数を取り出すことが出来ます
これで年数だけコピペするなどの作業をしなくて済みます
もちろん、セルの内容が変わった時は変わった内容に合わせて切り替えてくれます
では、残りの月数と日数を取り出す関数についても見ておきましょう
月数や日数を取り出すにはMONTH関数とDAY関数
月数も日数も年数と同じように簡単に取り出すことができます
まずは、それぞれの設定内容を確認してみましょう

月数を取り出すMONTH関数はこんな感じです

日数を取り出すDAY関数はこんな感じです
どれも使い方は一緒なので必要に応じて使い分けるのがポイントになってきます
日付の扱い方はしっかりと基本を押さえておくことが重要です
応用した使い方でも大切になってくるので覚えておきましょう
繰り返しになりますが、日付の正体がシリアル値だということが分かっていないと日付の扱いに苦労します
曜日と日付を自動的に切り替えるには表示形式の設定を知ることが大切です
曜日を扱うためには日付の基礎を理解して表示形式の設定方法を理解しておくことが重要です
なぜなら日付と曜日は基本的に同じものだからです
では、曜日の取り扱いに関する基本から押さえておきましょう

今回日付と曜日が1セットになって表示されていますね
数式を見ると「=A5」となっているだけです
これは、「A5のセルの内容を表示してね」という意味です
つまり、数式を利用してコピーしているだけです
数式を利用したコピーは参照先のセルが変更されても自動的に変更してくれるメリットがありますが、参照元が削除されてしまうと何も表示されなくなってしまうデメリットがあります
この方法は簡単ですが、実務でもよく使うので覚えておくと良いですよ
では、問題のどうして日付だけのセルのはずなのに曜日まで一緒に表示されているのか設定方法について見ていきましょう

その秘密は表示形式の設定になります
ポイントは「その他の表示形式」をクリックして「オリジナルの表示にすること」です

「表示形式」の中から「ユーザー定義」をクリック
「種類」に「yyyy/m/d aaaa」と入力します
入力が終わったら「OK」ボタンを押せば完了です
「yyyy/m/d aaaa」の意味は「西暦4桁/月数/日数 ○曜日」と表示してねという意味です
つまり、日付と曜日を一緒に表示するには表示形式を自分で設定してしまえばいいだけということです
アルファベットは「y=YEAR」「m=MONTH」「d=DAY」のそれぞれの頭文字なので覚えやすいですね
今回は「aaaa」の前に「半角スペース」を入れて日付と曜日の間に間隔を設定しています
この設定は好みなので入れても入れなくても問題はありません
では次に「曜日だけ」各列に表示してみましょう
今回は「○曜日」と「月」のように曜日と付ける場合と付けない場合の両方を説明します
ただ今回の場合2種類のやり方を使っていますが、「表示形式」で変えているか「関数」を使っているかの違いなので基本的な設定は一緒です

こんな風に「○曜日」と設定しています
数式バーを見て分かるようにさっきと同じ方法ですが今度は曜日だけが表示されています
これも表示形式を設定しているだけなのでユーザー定義の表示設定をしてみましょう

さっきの日付と曜日の設定とほぼ一緒ですが、今回は「aaaa」だけです
こんな風に曜日だけの表示をさせることもできます
分かってしまうと簡単ですよね
TEXT関数を使った曜日の表示方法
次はTEXT関数を使って「月」のように曜日名だけを表示させてみましょう

設定内容はこんな感じです
凄くシンプルに「=TEXT(A5,”aaa”)」となっています
TEXT関数の基本的な使い方は「値,表示形式」です
つまり、取得した値に好きな表示形式を設定して表示してくれる関数です
TEXT関数の使い方は「TEXT関数で簡単に数字を文字に変えられる」などの記事でも解説しているので良く分からない時は参考にしてみて下さい
表示形式の「aaa」は見ての通り曜日名だけを表示する設定なので関数と表示形式は目的によって使い分けるのが正解です
では、最後に「年月日」がバラバラの列に別れている場合に日付として設定する方について解説していきます
DATE関数で数字を日付に変換する
最初に解説した通り日付はシリアル値で出来ています
つまり、列で分けられた数字を日付として扱うにはシリアル値に変換しないといけないわけです
では、どうしたらシリアル値に変換すれば良いのでしょうか?
ちなみに計算してシリアル値にするなんてことは無いですよ
実は「DATE(デイト)関数」を活用すれば簡単に変換することが出来ちゃいます
では設定内容を見てみましょう

設定内容はこんな感じです
基本的な設定内容は「=DATE(年,月,日)」です
すごく簡単ですよね
つまり、それぞれの日数に対応する数字を指定してあげるとDATE関数が自動的にシリアル値にしてくれるとっても使いやすい関数です
今回の式を日本語にすると「=DATE(C5セルを年に,D5セルを月に,E5セルを日に)として日付に変換して」という意味になります
非常に簡単で使いやすい関数ですが、実務ではこんな風に年月日がバラバラになるケースはよくあるのでこの方法も覚えておくとすごく便利です
繰り返しになりますが、曜日と日付を自動的に切り替えるには表示形式の設定を知ることが大切です
オススメのExcel関数の解説書 5選
関数を本で学ぶ時は次に上げるものがオススメです
本を購入をオススメしている理由と各本の紹介に関して、下記の記事で詳しく解説しているので合わせて読んでみてください
コメントを残す