社会人であれば、業務でほぼ必ず利用すると言っても良いツールが、Microsoft Officeの「エクセル(Excel)」です。エクセルは、表計算ソフトなので、セル(表)に数字や関数を入力することで様々な計算ができます。単に表に数字や文字を入力するだけという使い方もできますが、エクセルを利用するのであれば様々な関数を覚えておくと便利です。

とはいえ、新社会人の方や、いままで業務でエクセルを利用する機会が少なかった方の中には、エクセルに対して苦手意識を持っている方もいるのではないでしょうか。「関数を使った計算」と聞いても具体的にどういった用途で使えるのかイメージできないこともあるはずです。

そこで、エクセルの“表計算ソフト”ならではの機能を試す方法としてオススメなのが「カレンダー」を作ることです。「DATE」や「WEEKDAY」という関数を利用することで、年と月を変更するだけで、自動的に新しいカレンダーを表示させることができます。

今回、エクセルを利用して1年中使えるカレンダーの作り方をご紹介します。カレンダーを利用する目的はもちろんのこと、エクセルの勉強にもなるため、ぜひ試してみてください。

▼こちらもおすすめ▼
エクセル(Excel)の【IF関数】を極めよう!“伝わる”レポート作成の第一歩

エクセルでカレンダーを作る手順を解説

エクセルの関数を使った表作成方法の中でも、特に簡単にできるのが「カレンダー」です。カレンダー作成の手順を解説していきます。

時間がない方のために、記事内で解説している作り方で作ったエクセルを下記よりダウンロードが可能です。

エクセルカレンダーのダウンロードはこちら

1.セルのサイズを調整し年・月・曜日を入力する

excel-calendar-1.jpg

まず始めに、エクセルで新しいシートを作成します。初期状態では、セルは横長の細い長方形になっており、カレンダーとしての見栄えが良いとは言えません。そのため、セルの幅と高さを調整しましょう。

全てのセルを選択し、列と行をそれぞれ右クリックし高さと幅の調整を行います。この記事では、列のみ「高さ50」に変更し、正方形に近い長方形にしています。任意のサイズで見やすいセルのサイズに調整してみてください。

excel-calendar-2.jpg

次に、年と月、曜日を順番に入力していきます。A1に「西暦」、B1に「年」、C1に「該当月」、D1に「月」を入力します。曜日は、A2~G2の間に入力してみましょう。この記事では、一例として「2017年12月」のカレンダーを作成します。

曜日は関数で表示させることもできますが、カレンダーの場合は変動しないため手動で入力しても問題ありません。

2.カレンダーの日付の軸となる「DATE関数」を入力する

excel-calendar-3.jpg

次に、日付を自動入力するための関数を紹介します。それが、「DATE関数」です。DATE関数とは、「年・月・日」にあたる3つの数字を組み合わせて日付を表示させる関数です。これは、カレンダーの年もしくは月の数字を書き換えたとき、連動して日付が変わる仕組みとして機能します。

excel-calendar-4.jpg

任意のセルに「=DATE(月,年,1(日))」を入力します。また、DATE関数を入力する際、月と年は手動で入力せず、先ほど記入したセルを選択するようにしましょう。

この記事では、「年」はA1、「月」はC1に入力しているため、それぞれのセルをクリックで選択します。すると、「=DATE(A1,C1,1)」となります。最後の「1」はカレンダーの初日を表す1日という意味です。

参考:
DATE 関数 - Office サポート

3.「WEEKDAY関数」を使って日曜始まりの日付を算出する

exel2nd-1.jpg

次に、先ほどDATE関数で作成した日付をカレンダー上に適用させる作業を行います。

E1で入力した日付を、A3に適用させるのですが、その時注意しなければならないのが、曜日と日付を正しく一致させることです。2017年12月1日は金曜日なので、その前にある「日・月・火・水・木」には11月最終週の日付を入力する必要があります。

そこで利用するのが、「WEEKDAY関数」です。この関数は、DATE関数と連動して正しい日付を呼び出すことができます。

A3のセルに「=$E$1-WEEKDAY($E$1)+1」と入力してみましょう。すると、日曜に「E1」を参照し算出した2017年11月26日という日付が表示されました。

後ほど紹介する「オートフィル機能」で他のセルに日付を連日でコピーするため、日付にズレが発生する可能性があります。それを防ぐためにセルを「$」で挟み込み「絶対参照」という方法を用いて参照するセルを固定しておきましょう。

参考:
WEEKDAY 関数 - Office サポート

excel-calendar-6.jpg

日付のセルに適切な日付が入力されたものの「年・月・日」全てが表示されてしまっているため、このセルを「日」だけに変更します。

excel-calendar-7.jpg

「年・月・日」を「日」への変更は簡単に行えます。適用させたい日付を選択し、右クリックで「セルの書式設定」を表示させます。

「表示形式」→「ユーザー設定」の順で選択し、表示されたフォームに「d」(Day=日)と入力します。すると、サンプルという箇所に「26」と表示されました。これでセル上に「日」だけを表示させることができました。

4.「オートフィル機能」を使って週ごとに日付を入力する

exel2nd-2.jpg

次にカレンダーの日付の欄に数字を順番に入力していきます。該当するセルの右下をドラッグすることで、自動的に日付を入力することができます。

自動的に入力するために、準備として、「B3」のセルに「=A3+1」と入力しましょう。これで自動的に日付が連番で入力されるようになります。

excel-calendar-8.jpg

自動で数字を入力できる機能のことを「オートフィル機能」と呼びます。日付や曜日、規則性のある数字をマウスのドラッグのみで自動的に入力できる機能です。月曜日から土曜日までの日付をオートフィル機能を使って適用させてみましょう。すると、「F1」が(2017年12月の)1日と表示されます。

5.翌週分は「前週の土曜日+1」「日曜日+1」で算出する

excel-calendar-9.jpg

次に、翌週以降の日付の入力を行います。まず、日曜日は、前週の土曜日の日付に1日足した数字を表示させます。「=G3+1」と入力してみましょう。

excel-calendar-10.jpg

そして、月曜日の日付は、日曜日の日付に対して+1日として「=A4+1」と入力します。月曜日から土曜日までをオートフィル機能で自動入力します。

excel-calendar-12.jpg

上記の作業を、12月の最終週まで繰り返し行ってみてください。すると、2017年12月の1ヶ月分のカレンダーが完成しました。

6.年・月を変更し、カレンダーに反映されるか確認する

excel-calendar-13.jpg

最後に、正しくカレンダーが作成できたかを確認します。最初にDATE関数を使って設定した、年と月の数字を変更してみましょう。この記事では、月を12月から9月に変更しました。それに連動してカレンダーが該当月の日付に自動的に変更されたら、正しく入力できているということがわかります。

7.罫線や書式設定を使って任意で装飾を行う

excel-calendar-14.jpg

年と月に対して日付が正しく連動すれば完成です。最後に、カレンダーとしての見栄えを整えるために、罫線や書式設定等を利用して任意でカレンダーに装飾してみましょう。

全てのセルに罫線を付け、土曜日と日曜日の文字色を変更することで、一般的なカレンダー同様の見栄えになるでしょう。また、セル上に入力されている11月と翌年1月の日付は色味を変更することで、12月分の日付を見やすく表示させることができるので、好みに合わせて調整してみてください。

まとめ

エクセルの「DATE関数」と「WEEKDAY関数」を用いてカレンダーを作る方法をご紹介しました。上記の手順に従って表を数字と文字を埋めていくだけで、誰でも簡単に作成することができます。

この方法を土台に、表のレイアウトを変更することで、日付別のタスク管理シートなどを作成することも可能です。関数ごとの仕組みを理解することで、様々な表を簡単に作成できるのがエクセルの魅力と言えるでしょう。

もし、エクセルの使い方にハードルを感じているのであれば、カレンダーのように非常に簡単に作成できる表から試してみてはいかがでしょうか。

追記(2017/11/09):「オートフィル機能」を用いた日付入力の説明箇所が一部不足したため追記いたしました。ご指摘いただきありがとうございます。