Excelで土日祝に色を付ける方法

午後1:

・Excel「データの入力、条件付き書式、関数(IF・AND・OR・COUNTIF・WEEKDAY・MONTH)」

 

 

 

上の項目を見る人見ればわかりますが、
やりたいことは「Excelで作ったカレンダーの土日に色を付ける」です。

 

これ、土日だけなら条件付き書式だけで簡単にできるのですが、

祝日を追加すると一気に難しくなります。

 

前置きとして、Excelには祝日を判定する機能は存在しません。

そのため、WEBサイトなどで最新の祝日一覧を用意しておく必要があります。

 

用意した一覧をもとに、COUNTIF関数を用いて祝日かどうかを判定します。

COUNTIF関数の公式は以下の通りです。

  • COUNTIF(「範囲」,「条件」)…「範囲」の中から「条件」に等しいものの個数を数える。

上記の図でいうと、

  • (B1には)E1~E17(青い範囲)の中で、A1(赤い範囲)の個数を数えなさい

という式になります。

 

式を入力後、月末までコピーすると以下のようになるはずです。

2/11(建国記念の日)と2/23(天皇誕生日)が「1」になるはずです。

ならなかった方はおそらく範囲を指定する際に絶対参照(列や行の手前にある「$」)をしておらず、

数える範囲が式のコピー時にずれてしまったのが原因と思われます。

 

$をつけておけば式をコピーしてずらしても、参照位置はずれないという例のヤツですね。

これは前提知識として必須です。

 

続けて土日かどうかの判定をC列に行っていきます。

ここで使うのはWEEKDAY関数ですね。

WEEKDAY関数は指定したシリアル値(日付データ)をもとに曜日を返す関数です。

返すデータは指定した引数に対応した数値が返ってきますが、

引数を「2」にしておくと、月曜なら1、日曜なら7を返します。

これで下準備が終了。

あとはこれら2つのデータをもとに、条件付き書式を設定してやります。

今回は条件が2つあります。

  • 【条件1】B1が0より大きい(祝日かどうか)
  • 【条件2】C1が5より大きい(土曜と日曜)

それぞれの条件のどちらかを満たせば「土日祝」となるので、OR関数で囲います。

 

これ、「どちらの条件満たせば~」ならAND関数を使えばよいですね。

今回はわかりやすくするためにB列とC列にあらかじめ式を入力していますが、

もちろん条件付き書式の計算式に全部入力しても構いません。

(引数のヒントが出ないので、難易度は大きく上がりますが)

 

 

 

本日はさらに「31日までコピーすると次の月が表示されてしまう場合の対処法」も実践されました。

これまたExcelカレンダーあるあるの質問ですね。

 

これは条件付き書式とmonth関数を使えば可能です。

Excelに自信のある方はぜひ挑戦してみてください。