【Excel】西暦を入力すると、日付が自動変更される方法|講座#2

Word・Excel

前回記事で、カレンダーの下地を作成しました。

今回は続けて「西暦を入力するだけで、すべての日付を自動表示させる方法」をご紹介します。

 

難易度 中級

 

FURIO
FURIO

ちょっと難しくなるけど、頑張ろう!
すぐに必要なひとはコピペして使ってね

 

▼ 前回記事

【Excel】カレンダー作成で基礎から学べるエクセル講座#1
初心者~中級者向け。超基本的な操作から、誰も教えてくれない応用テクニックまで。この記事だけで、ワンランク上のエクセル操作が学べます!

 

スポンサーリンク
スポンサーリンク

前回のおさらいと、やりたいこと

前回は、ここまで作成しました。

 

今回は「西暦を入力するだけで、枠内に日付が自動表示される」ようにします。

 

FURIO
FURIO

以下、順番にゆっくりやっていくよ

 

西暦を入力するセルを作成する

B1-D1 のセルを結合します

 

1行目の高さを広げます。

 

【POINT】
この「西暦入力」だけで、すべての日付を表示するようにします。
なので、少し目立つように大きめにしておきます。



日付を自動表示させる

 

毎月1日を表示するセルを作成する

カレンダーを作成したシートの隣に、もうひとつシートを準備します。

名前はなんでもいいですが、今回は「Sheet1」で進めます。

「タブ」と「シート」と「ブック」の違い
意外と区別がついていない人が多いですが、簡単にこう考えて下さい。
画面の上のほうに表示されているのが「タブ」、下のほうに表示されているのが「シート」、エクセルファイル自体が「ブック」です。

 

Sheet1のD2に

=DATE(カレンダー!$B$1,カレンダー!B4,1)

の計算式を入れます。

 

▲ こんな感じです

 

DATA関数について

DATA関数は、年月日を表すための関数です。
年、月は該当セルから数字を拾ってきていますので、数字だけが入力されている必要があります。

 

FURIO
FURIO

年は「2023」など、西暦を入力するセル。
月は、○月の「○に入る数字」を入力するセル。

数字(B4)と文字(B5)は別のセルに分けておく必要があるよ

 

 

同じ要領で、「B4」の部分を各月の数字が入ったセルに変更していきます。

 

たとえば2月の「2」という数字は「カレンダー」シートの「I4」セルなので、

=DATE(カレンダー!$B$1,カレンダー!I4,1)

となります。

 

以下、同様に1~12月まで入力すると、下記のようになります。

 

では「カレンダー」シートの「B1」セルに、「2023」と入力してみましょう

「Sheet1」の表示が、下記のように変更されればOKです。



対応する曜日を表示する

Sheet1での作業はまだ続きます。

次に、すぐ右のセルに曜日を表示する関数を入力します。

「E2」セルに、下記の関数をコピペしてください。

=WEEKDAY(D2,1)

 

 下までコピーします

 

WEEKDAY関数について

WEEKDAY関数は、曜日を数値で返します。

対応する戻り値は、下記のようになっています。

 

日曜日:1
月曜日:2
火曜日:3
水曜日:4
木曜日:5
金曜日:6
土曜日:7

 

参考にしたい人は、上記をコピーしてB2あたりに貼っておくといいかと思います。

貼り付ける際には、右クリックして「貼り付け先の書式に合わせる」を選択するとラクです。

 

セルの表示を「日付のみ」にする

「カレンダー」シートに戻ります。

日付が表示される個所をすべて選択し、「その他の表示形式」をクリックします。
※「Ctrl」キーを押しながらなぞると、簡単に選択できます。

 

表示形式を「ユーザー定義」にして、種類に「d」と手入力します。

 

「d」とはdayの頭文字。たとえば年月日で表示したいときには、year(年)/month(月)/day(日)なので、yyyy/m/d となります。



セルに自動で日付を表示させる

準備しておいたDATE関数とWEEKDAY関数を使った式で、「年月」と「曜日」に対応する日付が自動表示されるようにします。

 

▲ この図のように、「カレンダー」シート、「B6」セルに下記の計算式をコピペします。

=Sheet1!D2-(Sheet1!E2-1)

西暦に対応する日にちが表示されます。

 

さらに「C6」セルに下記の式をコピペします。

=B6+1

B6の数字に、1を足した数字が表示されたと思います。

 

この調子で、D6に「=C6+1」、E6に「=D6+1」……というふうに、前日のセル+1の式を入力します。コピペすれば簡単にできます。

 

▼ こんな感じの表ができましたか?

 

 つづけて、2月、3月と入力していきましょう。

 

2月は

=Sheet1!$D$3-(Sheet1!E3-1)

 

3月は

=Sheet1!$D$4-(Sheet1!E4-1)

と、対応するセルが変わっていくので注意してください。

 

全部入力すると、こんな感じです。

 

FURIO
FURIO

せっかくなので、最終更新日を「Ctrl+;」で変えておこう

 

西暦を入力するセルに様々な年をして、日付が自動で変更されるか確認してみて下さい。

 

今回の講座は以上になります。

お疲れさまでした!

 

 

FURIO
FURIO

次回は、日付の色を自動で変える方法だよ
当月ぶんに表示された前月・次月の日を灰色にして、土日を赤にする、ということができるよ
もちろん、自動表示に対応しているよ!

 

▼ 次の講座はこちら

【Excel】カレンダーに合わせて日付の色を自動で変える|講座#3
自動でカレンダーの日付を表示したとき、さらに自動で色を変更する方法です。関数を使って「休日を赤」に、表示されてしまった「当月以外の日付を薄い灰色」にすることができます。

コメント