Excel(エクセル)の数式を使うと、年と月を入力するだけで自動で表示されるカレンダーを作ることができますが、そこに祝日を自動で入力することはできるのか。今回はその方法を解説します。
祝日を自動で表示させる方法は2通りありますが、今回は別シートに祝日データを用意する方法をお伝えします!
前回の記事で作成したカレンダーを使用しています。良ければそちらの記事もご確認ください。
>> 【Excel】年と月を入力するだけで、自動に生成されるカレンダーの作り方! <<
カレンダーに祝日を自動で入力する方法
カレンダーに祝日を自動で入力する方法は2つあります。
- 「祝日一覧」を別シートに追加し表示する『今回はこちらを紹介!』
(デメリット:1年に1回、祝日一覧の更新が必要) - インターネット上のデータを読み込み表示する
(デメリット:常時インターネット接続が必要)
目指すカレンダーはコチラ!
当月の祝日は赤くして、前後の月の祝日はグレーに自動でなる、そんなカレンダーを目指します。
【カレンダーに祝日を入れる手順】
- 祝日を入力するセル(行)を追加し、体裁を整える
- セルに数式を入力して、祝日が自動で表示されるようにする
- 条件付き書式で、色を付ける
1.祝日を入力するセル(行)を追加し、体裁を整える
- 日付の下に行を追加する
- 日付と空白行の間の線を消す
- なんでもいいので祝日を入力してみる
- 体裁を整える(文字のサイズやフォントなど)
まずは、日付の下に行を挿入します。
日付の行と、その下の空白行(A3~G4)を選択し、右クリックしセルの書式設定(ctrl +1)を開きます。
セルの間の線を消します。
- 罫線を選択する
- 銭の種類で「なし」を選択する
- 赤い矢印の個所の線をクリックするとせんが消える
5行目6行目の間、7行目8行目の間、、、と日付と空白行の間の線を全て消します。
適当に祝日を入力して、文字のサイズやフォント、配置を調整します。
また、行の高さも調整し、全体的な見栄えも確認します。
次は、実際に数式を入力して祝日を表示します。
2.セルに数式を入力して、祝日が自動で表示されるようにする
- 祝日一覧を別シートに作る
- 祝日一覧のデータに名前を付ける
- 数式を入力する
祝日の一覧を別シートに作成します。
ネットで検索すると、いっぱい出てくるのですが、内閣府が配布しているデータが一番正しいので、そちらの使用をおすすめします。
内閣府が配布している祝日一覧をダウンロードして使用する
国民の祝日は、内閣府が次年の分までを発表しています。
csv形式で1955年から最新の祝日までをまとめたデータを配布してくれているので、そちらをダウンロードすると、古いカレンダーを作る事も簡単にできます。
<< 国民の祝日について – 内閣府 (cao.go.jp) >>ホームページはこちら
上記の表示をクリックすると、右上にポップアップ窓が出てくるので、ファイル開くをクリックします。
開いたファイルのタブを右クリックし「移動またはコピー」を選択、
移動先のブック名で対象のファイルを選択し、「末尾へ移動」を選んでOKを押します。
祝日一覧に名前を付けて、数式を入力する
カレンダーシートの隣に祝日一覧を追加できたので、そのデータに名前を付けます。
もちろん、A列に日付(年から記入された日付)、B列に祝日名が記載されていれば、どんな表でも大丈夫です!
まず、ABの列を選択し、数式タブの「名前の管理」を押します。
名前を適当に付けて、(今回は「祝日」とします)他はさわらずOKを押します。
これで、祝日という名前のデータが出来ました。
このデータを使って、祝日を検索する数式をA4セルに入力します。
=IFERROR(VLOOKUP(A3,祝日,2,FALSE),"")
入力した数式を他のセルに入力する為に、A4セルをコピーし、他の祝日を入力したいセルに数式のみコピーします。
数式の説明をすると、
VLOOKUP(A3,祝日,2,FALSE)は
A3セルの値が、「祝日」と名前を付けたデータの中にあるか完全一致(FALSE)で検索し、見つけたらその2列目(隣)の値を返します。
そのままだと、値が見つからない場合に「#N/A」と表示されてしまうので、
IFERROEを付けて、エラーだったらセルに何も入力しない(””)を付けています。
これで、祝日がカレンダーに表示されるはずです。(黒字で!)
3.条件付き書式で、色を付ける
次は、祝日とその名前を赤色に変更する為に、条件付き書式でルールを作成します。
祝日を赤色に変更する条件付き書式
カレンダーの全てのセル(A3~G12)を選択し、条件付き書式で「新しいルール」をクリック。
「数式を使用して~」を選び下記の数式を入力します。
=COUNTIF(祝日,A3)>0
=COUNTIF(祝日,A3)>0
COUNTIF関数は範囲の中に検索する条件と一致するセルを探して、その個数を返す関数です。
祝日データの中にA3セルの中身があったら1となる為、0より多い、つまり祝日である場合に、このルールを発動させよ、という意味になります。
これで、祝日が無事赤色表示されたのですが、このままだと、当月以外の日にちも赤色で表示されてしまいます。(例えば、5月のカレンダーにした場合、4/29昭和の日は当月以外なのでグレーにしたいのに赤色表示されてしまいます)
原因は2つ。
・祝日がカレンダーの月以外だったら、祝日名をグレーにする書式設定が追加されていないため
・条件付き書式は、ルール一覧の上の方に表示されているルールが優先されるため
祝日名をグレーにする条件付き書式
まずは「祝日名をグレーにする書式設定」です。(分かりやすく、5月のカレンダーでやります)
- 昭和の日(4/29のセルB4)を選択
- 条件付き書式で『新しいルール』を選択する
- 「数式を使用して、書式設定するセルを決定」を選択
- 数式【=MONTH(B3)<>$B$1】を入力する
- 書式設定で文字色をグレーに設定する
- 「OK」を押して、4/29の昭和の日がグレーになるか確認する
【=MONTH(B3)<>$B$1】は、
B3に入力されている月がB1より多いもしくは少ない(つまり、= じゃない)場合にルールを適用する数式です。
B3の日付は2024/4/29で、月は4。カレンダーは5月(B1)のものなので、ルールが適用されグレーになります。
祝日名がグレーになるのを確認したら、条件付き書式の範囲を広げます。
- 条件付き書式の「ルールの管理」を選択する
- 先ほど作成したグレーになるルールの適用先を確認する
(ルールが見つからない場合は、「書式ルールの表示」のところを「このワークシート」に変更してみてください) - 矢印の個所を押すと、セルの選択ができるようになるので、カレンダー内の祝日名が入力される予定のセルを全て選択して適用させる
(Ctrlを押しながらA4~G4、A6~G6、、、と選択) - 完了!
これで、カレンダーの月以外の日の祝日名がグレーに自動で変更されるようになります。
※日付をグレーにする方法は前回の記事で説明していますので、良ければそちらもどうぞ。
【Excel】年と月を入力するだけで、自動に生成されるカレンダーの作り方!
ルールの管理でカレンダーを完成させる
最後に、条件付き書式の適用順序を入れ替えて、希望のカレンダーを完成させます。
条件付き書式の「ルールの管理」を開くと、ルールがいくつかあると思います。
文字を赤色にするルールよりも、文字をグレーにするルールを優先させればOKです。
条件付き書式の「ルールの管理」で、赤色にするルールを ▼ を押して下に下げるだけです。
こうして出来上がったカレンダーがこちら!
他の月に変えても問題なく表示されるか、確認してみてくださいね!
【PR】作業実績20万件突破!エアコン・ハウスクリーニングなら【アールクリーニング】
エアコンクリーニングが、今なら50%以上割引に!
年末のこの時期、早めの予約がおすすめです!
自動表示カレンダー配布中
こちらでは、自動表示カレンダーを配布しています。
年と月を入力するだけで、その月のカレンダーが自動で表示されます。
祝日も自動で表示され、予定や記念日を入力するとそれも表示されます。
また、テーマを変更することで色を変えることも可能です!
こちらのカレンダーにある、予定やテーマの変更については、また別の機会に説明させていただきます。
まとめ
いかがでしょう!もし、シートを追加したくない、という方は次回の記事で、ネットから自動で祝日を表示する方法を紹介しますので、そちらをご覧ください!