Excel。カレンダー。隔週ごとに手早く塗りつぶしたいけど、どうしたらいい
<条件付き書式+MOD+WEEKNUM関数>
次のような簡易カレンダーがあります。
わかりやすいように、週ごと。隔週で塗り分けたいと考えました。
では、どのようにしたら、手早く隔週で塗り分けることができるのでしょうか。
隔週という条件なので、条件付き書式をつかいます。
そこで、問題になるのが、条件式です。
隔週をどのように確認したらいいのでしょうか。
週番号を求めることができる、WEEKNUM関数というのがあります。
求めた週番号が、奇数か偶数かを求めれば、隔週で塗り分けることができそうです。
奇数か偶数かを求めるには、除算した余りを求めることができるMOD関数をつかいます。
早速、設定していきます。
A2:B16を範囲選択します。
ホームタブの条件付き書式から「新しいルール」を選択します。
新しい書式ルールダイアログボックスが表示されます。
「数式を使用して、書式設定するセルを決定」をクリックして、条件式を設定します。
条件式のボックスには、
=mod(weeknum($A2,1),2)
と数式を設定したら、塗りつぶしたい色を設定して、OKボタンをクリックします。
ご覧のように、隔週で塗り分けることができました。
条件式の確認をしましょう。
数式全体ですが、
=mod(weeknum($A2,1),2)
数式の最後に「=0」をつけてもいいのですが、省略しています。
=mod(weeknum($A2,1),2)
この数式が成立しているならば、「1」と算出され、TRUEという判断になります。
また、成立していないのなら「0」と算出され、FALSEという判断になります。
このため、「=0」は省略することができます。
MOD関数は、除算した余りを求めることができます。
2で除算することで、奇数か偶数かを求めることができます。
WEEKNUM関数は、週番号を求めることができます。
最初の引数は、シリアル値。日付です。
列固定の複合参照にすることで、行全体を対象にすることができます。
2つ目の引数は、「週の基準」です。
今回は、1をつかいました。1は、週の最初を日曜日として設定することができます。
用途によって、基準を変えることで、最初の曜日に対応させることができます。
このWEEKNUM関数ですが、週の基準の21をみてみると、(システム2)と表示されています。
このシステム1とシステム2の違いは何かというと、システム2は、その年の最初の木曜日を含む週をその年の第1週の場合でつかうことができるというのが、システム2です。
外資系の企業さんで使うことが多いのが、システム2のようです。
これらの関数を組み合わせてつかうことで、隔週で塗り分けることができる条件式を設定することができます。