年と月を入力するだけで、その月の日付や曜日が自動で切り替わる便利なスケジュール表の作成方法を紹介します。
しかも、末日が28日の月は28日まで、末日が30日の月は30日までという具合に、末日に応じて表の長さが自動で変化します。
※マクロは使いません。Excelの基本的な機能だけで作ることができます。
では、さっそく始めましょう。
使いまわせるスケジュール表を作成する
年と月の入力欄をつくる
年と月の入力欄をつくります。
ここでは、A1セルに【年】、A2セルに【月】を入力します。
とりあえず、A1セルに2021、A2セルに6と入力します。
表示形式で 年 と 月 を表示する
年( 2021 )と月( 6 )を入力したら、表示形式で数字の後ろに【年】と【月】が表示されるようにします。
A1セルを選択し、[Ctrl]+[1]と押して、セルの書式設定ダイアログを開きます。
ユーザー定義を選択し、種類ボックスに入力されているG/標準に続けて、年と入力します。
すると、表示が2021年となります。
つづけて、A2セルを選択し、セルの書式設定ダイアログを開いて、ユーザー定義の種類ボックスのG/標準に続けて、月と入力します。
すると、表示が6月となります。
A3セルを日付、B3セルを予定と入力します(好みで変えてください)。
DATE関数で日付をつくる
次は、DATE関数で日付をつくります。
DATE関数の引数(ひきすう)は、年、月、日です。
[=DATE( 年,月,日 )]という書式で表します。
年はA1セルに、月はA2セルに入力しているので、これを使います。日は1とします。
A4セルに=DATE(A1,A2,1)と入力します。
[Enter]を押すと、A4セルに日付が2021/6/1のように入ります。
A5セルには2021/6/2と入るようにしたいので、=A4+1と入力します。
この式を、A31セルまでコピーします。
▼
A31セルまでコピーしたのは、28日までは必ずあるからです。
29日以降は、月によってある月とない月があるので、式を工夫します。
A32セルには、もしDATE関数が29日を返したら29日を、返してこなかったら空白をというIF関数を入力します。
DATE関数は年月日を返す関数ですが、ほしいのは日だけなので、DATE関数をDAY関数で囲みます。
これを式にすると、
=IF(DAY(DATE($A$1,$A$2,29))=29,DATE($A$1,$A$2,29),"")となります。
2021/6/29は存在する日付なので、[Enter]で確定すると、2021/6/29が入力されます。
同じように、A33セルには、
=IF(DAY(DATE($A$1,$A$2,30))=30,DATE($A$1,$A$2,30),"")と入力します。
同じように、A34セルには、
=IF(DAY(DATE($A$1,$A$2,31))=31,DATE($A$1,$A$2,31),"")と入力します。
6月には31日が存在しないので、A34セルは空白になります。
日付の表示を【日にちと曜日】にする
今度は、A列の表示形式を日にちと曜日に変更します。
A4セル~A34セルを選択し、[Ctrl]+[1]と押して、セルの書式設定ダイアログを開きます。
ユーザー定義を選択し、種類ボックスに入力されているyyyy/m/dを、d(aaa)とします。
[Enter]を押し確定すると、1(火)などの日にちと曜日の表示に変わります。
罫線を描く範囲を選択
次は、罫線を描きます。
罫線を描く、A4セル~B34セルを選択します。
※A4セル~A34セルが選択されたままの状態であれば、[Shift]+[→]と押すと選択できます。
条件付き書式を選択
[ホーム]タブのスタイルグループにある条件付き書式をクリックします。
そして、新しいルールを選択します。
数式を使用して、書式設定するセルを決定を選択します。
次の数式を満たす場合に値を書式設定ボックスに、=$A4<>""と入力します。
これは、A列が空白ではないという意味です。
つまり、A列に日付が入っていれば書式が適用されることになります。
[書式]ボタンをクリックします。
[罫線]タブをクリックし、外枠ボタンをクリックします。
[Enter]を2回押し確定すると、A列に日付のあるセルに罫線が描かれます。
A34セルには、罫線が描かれていないのが確認できます。
これで、A1セルの【年】とA2セルの【月】を変えると、日付や曜日が自動で切り替わる便利なスケジュール表ができました。
この表でも十分使えるものですが、ここからはさらに、自動で土曜や日曜、そして祝日のセルに色がつくようにしていきます。
次のページ >自動で土曜や日曜、そして祝日のセルに色がつくようにする