スケジュール表や勤務表を作るたびに、土日を手作業で塗りつぶしていませんか。塗り忘れが出たり、行を追加した途端に色がズレたりすると、見た目が崩れるだけでなく予定の確認ミスにもつながります。
Excelなら「条件付き書式」を使うことで、日付から土日を自動判定して色付けできます。さらに、日付セルだけでなく行全体の色分けや、横型カレンダーへの適用、祝日リストと連動した色付けまで同じ考え方で拡張可能です。
本記事では、WEEKDAYの最短式と参照固定のコツを中心に、初心者でもつまずきやすいポイントを丁寧に整理しながら、土日色付けを一度で完成させる手順を解説します。
※本コンテンツは「記事制作ポリシー」に基づき、正確かつ信頼性の高い情報提供を心がけております。万が一、内容に誤りや誤解を招く表現がございましたら、お手数ですが「お問い合わせ」よりご一報ください。速やかに確認・修正いたします。
エクセルで土日を色付けする全体像
土日色付けは条件付き書式で自動化する
予定表や簡易カレンダーを作るとき、土日が一目で分かるだけで見やすさが大きく変わります。ところが、手作業で塗りつぶす運用は次のような問題が起きやすいです。
月が変わるたびに同じ塗り作業を繰り返すことになる
途中で行を挿入したり日付を追加したときに、塗り忘れが発生する
複数人で編集すると、塗りのルールが統一されず見た目が崩れる
土曜と日曜の色分け、祝日の追加など、要件が増えるほど破綻しやすい
こうした手間とミスをまとめて解消するのが「条件付き書式」です。条件付き書式は、セルの値(ここでは日付や曜日)を条件にして、条件に合うセルだけに自動で書式(塗りつぶし、文字色、太字など)を適用できます。
一度ルールを作っておけば、日付を入れ替えても、表をコピーしても、一定の条件で自動的に色付けされます。特に「土日だけ色を付けたい」「土日を行全体に付けたい」といった要望は、条件付き書式が最も得意とする領域です。
また、条件付き書式の利点は「見た目が変わるだけで、元の値(入力した日付)を壊さない」点にもあります。セルの値を書き換えずに表示上の強調だけを行えるため、集計や並び替え、フィルターと相性が良いのもメリットです。
日付で判定する方法と曜日文字で判定する方法
土日を色付けする方法は、大きく分けて2種類あります。どちらが正しいというより、表の作りとデータの持ち方で選ぶのがコツです。
| 判定の考え方 | 主に使うもの | 向いている表 | メリット | 注意点 |
|---|---|---|---|---|
| 日付から曜日を判定 | WEEKDAY関数 | 日付が入力されている表全般(縦型・横型どちらも) | 日付さえあれば判定できる。曜日列が不要で汎用性が高い | WEEKDAYの戻り値(1〜7)や第2引数で迷いやすい |
| 曜日文字で判定 | TEXT関数、または曜日列(“土”“日”) | 曜日列が既にある表、曜日を表示して運用している表 | 見た目の曜日と条件が一致しやすく直感的 | 表示形式(“土”か“土曜日”か)に依存し、表の設定変更でズレやすい |
基本的には「日付セルがあるならWEEKDAY」を選ぶのが安定です。曜日の表示形式に左右されにくく、表のレイアウトが変わっても応用しやすいからです。一方、日付がなく「曜日だけが入っている」表や、「曜日列が必須で、そこを参照したい」場合は曜日文字判定が役立ちます。
このあと解説する手順は、まずWEEKDAYでの王道パターンを押さえ、そのうえで行全体・横型カレンダー・祝日追加と広げていきます。
条件付き書式で土日を色付けする基本手順
日付セルをWEEKDAYで判定して日曜を色付けする
ここでは最も基本となる「日付セルそのものを日曜だけ色付けする」手順を、迷いどころが出ないように細かく説明します。例として、A2:A40に日付が縦に並んでいる状況を想定します(もちろん他のセルでも考え方は同じです)。
手順(日曜だけ色付け)
色を付けたい日付セルの範囲を選択します(例:A2:A40)
先に範囲を選んでからルールを作るのが基本です。選択を忘れると、適用範囲が意図せずズレます。
ホームタブ → 条件付き書式 → 新しいルール をクリックします。
「ルールの種類を選択してください」で 数式を使用して、書式設定するセルを決定 を選びます。
「次の数式を満たす場合に値を書式設定」で、数式欄に次を入力します。
=WEEKDAY(A2)=1
書式ボタンを押し、塗りつぶしで日曜にしたい色を選びます(文字色を変えたい場合はフォントも設定可能です)。
OK → OKで確定します。
なぜ「=WEEKDAY(A2)=1」なのか
WEEKDAYは「日付を曜日の番号に変換」する関数です。第2引数を省略した場合、一般的な戻り値は次のイメージです。
日曜=1
月曜=2
…
土曜=7
そのため、日曜だけを狙うなら「WEEKDAYが1のとき」を条件にします。
失敗しにくいコツ
数式に入れるセルは 選択範囲の左上セル に合わせます。今回ならA2です。
もし範囲がC5:C50ならWEEKDAY(C5)が基準です。数式の先頭の =(イコール) は必須です。
日付が文字列になっているとWEEKDAYの結果が期待と違うことがあります。疑わしいときは、セルの表示形式だけでなく、入力値が本当に日付として認識されているか確認します(後のトラブル章で詳しく扱います)。
土曜も追加して色を分ける
日曜ができたら、土曜も同じ流れで追加できます。土曜と日曜を色分けする場合、基本は「ルールを2本作る」ことです。1本で色を2色に分けることはできないため、土曜用・日曜用を別々に持ちます。
手順(土曜のルールを追加)
同じ範囲(例:A2:A40)を選択した状態で、
ホーム → 条件付き書式 → 新しいルール。「数式を使用して…」を選び、数式に次を入力します。
=WEEKDAY(A2)=7
書式で土曜用の色を設定してOK。
これで、日曜と土曜は別色になります。
ルール作成の効率化(複製の考え方)
条件付き書式には「ルールの管理」という画面があり、そこで既存ルールを編集できます。日曜ルールを作ったあとに、同じ設定のまま数式だけ変えて土曜にする、といった運用がしやすいです。色だけ変えて、数式を「=1」→「=7」に変える、と考えると入力ミスが減ります。
どちらが優先されるのか
土曜と日曜は同じ日付に同時に当たることがないため(通常はあり得ないため)、優先順位で悩むことはほぼありません。祝日など別条件を混ぜ始めると優先順位が重要になりますが、土曜・日曜だけならまずは安心して2本運用で問題ありません。
土日をまとめて一発で判定する式
「土日を同じ色でよい」なら、ルールを1本にまとめられます。ここで強くおすすめしたいのが、WEEKDAYの第2引数に「2」を使うパターンです。
おすすめの式(土日まとめて)
=WEEKDAY(A2,2)>=6
この式のポイントは、第2引数を2にすることで戻り値が次のように変わる点です。
月=1
火=2
水=3
木=4
金=5
土=6
日=7
この並びは、平日が1〜5でまとまり、週末が6〜7になるため、「>=6」で土日をまとめて判定できます。数字の意味が直感的なので、後から見返したときにも理解しやすく、保守性が高いです。
土日をまとめるメリット
ルールが1本になるので管理がラク
ルールの優先順位を気にする場面が減る
行全体塗りつぶしや、横型カレンダーへの応用がしやすい
土日を分けるべき場面
一方で、業務上は「土曜は半ドン扱い」「日曜は完全休」など、色分けした方が見やすいこともあります。その場合は2本運用が適しています。どちらが良いかは表の用途次第ですが、迷うならまずは「土日まとめて1本」を作り、必要になったら分割するのがスムーズです。
エクセルで土日を行全体に色付けする設定
行全体に塗るときの参照固定の考え方
日付セルだけでなく、予定や担当者名が並んでいる「行全体」を土日だけ色付けしたいことは非常に多いです。たとえば、A列に日付、B列に担当、C列に作業内容…といった表なら、土日は行全体が薄い色になっていると視線誘導が効きます。
行全体を塗るときに重要なのが、参照の固定($)です。条件付き書式は、適用範囲内の各セルに対して「数式をずらしながら評価」します。ずらしてほしくない参照を$で固定しないと、判定の基準がブレて想定外の結果になります。
基本ルール(縦型の表で行全体を塗る)
判定に使う日付が A列 にあるなら、数式は $A2 の形にする
$A2は「列Aは固定、行は動く」という意味です。
これがなぜ必要かを、簡単なイメージで説明します。
適用範囲がA2:G2のとき
A2の評価では
WEEKDAY(A2,2)B2の評価では参照がずれると
WEEKDAY(B2,2)C2では
WEEKDAY(C2,2)
…のように、基準が列ごとにズレてしまいます。
本当は「どの列を塗るときでもA列の日付で判定したい」ので、列Aを固定して $A2 とします。これで、B2やC2を塗る判定をしているときでも参照がA列に戻ります。
ありがちな誤解
$A$2にすると「列も行も固定」になります。
これは「常にA2だけを判定基準にする」ことになり、全行が同じ結果になって、全部塗られる/全く塗られない原因になりやすいです。
行全体の塗りつぶしでは、たいてい「行は動いてほしい」ので$A2が基本です。
縦型の予定表で行全体を塗りつぶす例
ここでは、縦型の予定表(一覧形式)の例で、具体的に設定していきます。
例の表
A列:日付
B列:担当者
C列:作業内容
D列:備考
…
範囲はA2:G40(2行目から40行目まで)を想定
土日を行全体に色付けする(1本でまとめる)
色付けしたい範囲(行全体)を選択します。
例:A2:G40
行全体の範囲を必ず選びます。A列だけを選ぶと行全体に反映されません。
ホーム → 条件付き書式 → 新しいルール。
「数式を使用して…」を選び、数式に次を入力します。
=WEEKDAY($A2,2)>=6
書式で塗りつぶし色を設定してOK。
土曜と日曜を色分けして行全体に反映
色分けしたい場合は、ルールを2本作ります。
日曜:
=WEEKDAY($A2)=1土曜:
=WEEKDAY($A2)=7
ここで第2引数を省略しているのは「日=1、土=7」を使うためです。もちろん第2引数=2で統一したいなら、次でも構いません。
土曜:
=WEEKDAY($A2,2)=6日曜:
=WEEKDAY($A2,2)=7
どちらでも結果は同じです。重要なのは「数字の対応を混ぜない」ことです。省略版と第2引数=2を混ぜると、土曜を7と見なすのか6と見なすのかがズレて混乱します。運用しやすい方に統一すると事故が減ります。
横型カレンダーで列やセル範囲を塗りつぶす例
次は、横型のカレンダー形式です。月間カレンダーのように、日付が横に並び、その下に予定が入る形式を想定します。
例の表
B2:AF2 に日付が横並び
B3:AF20 に予定やメモを入力
土日列(該当する日付の列)だけを色付けしたい
この場合、判定に使う日付は「2行目」にあり、色付け対象は「3行目以降」です。したがって、判定式では 行2を固定し、列は動くようにします。
数式の基本形
=WEEKDAY(B$2,2)>=6
ここで B$2 となっているのは、次の意味です。
列Bは固定しない(列は右へ進むにつれC、D…と変わってほしい)
行2は固定する(判定は常に2行目の日付を参照したい)
設定手順(土日列をまとめて色付け)
色付けしたい範囲(例:B3:AF20)を選択します。
条件付き書式 → 新しいルール → 数式を使用…
数式に次を入力します。
=WEEKDAY(B$2,2)>=6
書式で塗りつぶし色を設定してOK。
縦型と横型で「固定の向き」が逆になる理由
縦型では「判定に使う列(A列)を固定」しましたが、横型では「判定に使う行(2行目)を固定」します。どちらも考え方は同じで、次の一言に集約できます。
判定に使うセル(基準セル)が、適用範囲内でズレないように$で固定する
縦型は列がズレやすいので列を固定し、横型は行がズレやすいので行を固定します。この原理が分かると、どんな表でも応用が効くようになります。
エクセルで土日と祝日も色付けしたいとき
祝日リストを作ってCOUNTIFで判定する
土日だけでなく祝日も色付けしたい場合、最も分かりやすく運用しやすいのが「祝日リストを別シートに作る」方式です。祝日の判定を数式で直接書こうとすると複雑になりがちですが、リストを参照する形にすれば、更新も管理も簡単になります。
祝日リストの作り方(基本)
別シートを作り、名前を「祝日」など分かりやすいものにします。
祝日の日付を縦に並べます。
例:祝日シートのA2:A200に祝日の日付を入力
入力する日付は、必ず「日付」として認識される形式で入力します(文字列にならないよう注意)。
日付セルを祝日色にする(セルだけ色付け)
日付がA2に入っている場合の例です。
=COUNTIF(祝日!$A:$A,A2)>0
COUNTIFは「範囲の中に一致する値が何個あるか」を数えます。祝日リストに同じ日付があれば1以上になるので、>0で祝日判定できます。
行全体を祝日色にする(縦型の表)
縦型の予定表で行全体を塗る場合は、判定基準の列を固定します。
=COUNTIF(祝日!$A:$A,$A2)>0
これで、B列やC列のセルを塗る判定をするときでも「A列の日付」で判定できます。
祝日リストを毎年更新しやすくするコツ
祝日色付けは便利ですが、運用で一番つまずくのが「翌年の祝日リストが更新されない」ことです。更新漏れがあると祝日が通常日と同じ見え方になり、重要な予定を入れてしまうなど事故につながります。次の工夫で更新の手間と漏れを減らせます。
コツ1:祝日リストは1枚に追記方式
年ごとにシートを分けると参照範囲が毎年変わり、条件付き書式の式も直す必要が出ます。祝日リストは1枚にまとめ、過去分も含めて追記していく方が、式を固定できて安全です。
コツ2:範囲は列全体参照より「余裕ある範囲」にする
祝日!$A:$A のような列全体参照は簡単ですが、データ量が多いブックでは再計算が重くなることがあります。運用が長期化する場合は、ある程度余裕を見て 祝日!$A$2:$A$500 のように範囲を決めておくと軽くなります。
コツ3:祝日リストを「テーブル化」する
祝日リストをテーブル(挿入→テーブル)にしておくと、追加した行が自動で範囲に含まれます。参照もしやすくなり、更新時の事故が減ります。
コツ4:名前付き範囲を使って式を読みやすくする
祝日範囲に「Holidays」などの名前を付けると、式が読みやすくなります。
=COUNTIF(Holidays,$A2)>0
チームで共有するファイルでは、式の読みやすさがそのまま保守性になります。「何を数えているか」が見えるだけで引き継ぎがラクになります。
土日と祝日で優先順位が競合するときの整理
土日と祝日を両方色付けすると、「祝日が日曜に重なる」など、複数ルールに同時に該当する日が出てきます。このとき、どの色を表示したいかを決めておかないと、見え方がブレたり、想定外の色になったりします。
ここでは現実的な3パターンで整理します。
パターンA:祝日を最優先にしたい
祝日が日曜に重なる場合でも、祝日色を最優先にしたいことがあります(会社の休業日表示など)。この場合は「ルールの管理」で祝日ルールを上に配置し、優先させます。
祝日ルール:
COUNTIF(...)>0土日ルール:
WEEKDAY(...)>=6
配置の考え方は「より重要な色付けを上に」です。
パターンB:土日と祝日で色を分けたい
祝日と土日を別の意味で色分けしたい場合は、祝日ルールを別色にします。重なる日は「どちらの色にしたいか」で優先順位を決めます。
祝日=目立つ色、土日=淡い色
重なる日は祝日色にしたい → 祝日ルールを上へ
パターンC:土日祝をまとめて同色でいい
スケジュールを見やすくする目的なら、土日祝を同じ色にしても十分なことが多いです。その場合はOR条件で1本に統合できます。
=OR(WEEKDAY($A2,2)>=6,COUNTIF(Holidays,$A2)>0)
ルールが1本になるので、優先順位の衝突そのものが起きにくくなります。運用がシンプルになり、設定ミスも減ります。
エクセルで土日の色付けがうまくいかない原因
色が付かないときに最初に見る3点
「設定したのに色が付かない」ときは、焦って数式をいじる前に、まず次の3点を点検すると復旧が速いです。
1)適用範囲が正しいか
条件付き書式は「どの範囲に適用するか」がすべての出発点です。範囲がズレていると、数式が正しくても色は付きません。
予定表の一部だけ選択したままルールを作っていないか
行全体を塗るつもりなのに、日付列だけに適用していないか
表をコピーしたあと、適用範囲が元シートのままになっていないか
「ルールの管理」で適用先を確認すると確実です。
2)数式の参照セルが先頭セルになっているか
条件付き書式の数式は、選択範囲の左上セルを基準に書くのが原則です。ここがズレると判定がずれて色が付かなくなります。
範囲がA2:A40なのに、式が
WEEKDAY(A1)になっていないか横型でB3:AF20を選んだのに、式が
WEEKDAY(C$2)など中途半端にずれていないか
まずは「左上セル」を見て、そのセル参照になっているか確認します。
3)日付が日付として認識されているか
見た目が「2025/1/5」でも、実は文字列として入っている場合があります。文字列だとWEEKDAYが正しく評価できず、結果として色が付かないことがあります。
簡易チェックとしては、日付セルを選択して数式バーを見たり、別セルで =ISNUMBER(A2) を試す方法があります。日付として認識されていれば通常はTRUEになります(※環境により表示は異なります)。FALSEなら文字列の可能性が高いので、入力を日付として整える必要があります。
全部のセルが塗られるときの典型ミス
「全部塗られてしまった」「平日まで色が付く」という場合、原因はかなりパターン化されています。特に多いのは参照固定($)のミスです。
典型ミス1:$A典型ミス1:$A$2で固定しすぎているで固定しすぎている
縦型の表で行ごとに判定したいのに、次のように書いてしまうケースです。
誤:
=WEEKDAY($A$2,2)>=6
これだと、どの行の判定でもA2だけを見ます。A2が土日なら全部土日扱いになり、A2が平日なら全部平日扱いになって、結果が極端になります。
正:
=WEEKDAY($A2,2)>=6
行番号は動かす、列だけ固定するのが基本です。
典型ミス2:固定の方向が逆(縦型なのに行固定、横型なのに列固定)
横型カレンダーでよくあるのが、基準行を固定せず列を固定してしまう例です。
誤:
=WEEKDAY($B2,2)>=6正:
=WEEKDAY(B$2,2)>=6
横型は「日付がある行」を固定するのが肝です。逆に縦型では「日付がある列」を固定します。どちらも「判定に使うセルがずれないようにする」という同じ原理です。
典型ミス3:WEEKDAYの種類の混同
次の2つは戻り値が違います。
WEEKDAY(A2)(第2引数省略)WEEKDAY(A2,2)(第2引数=2)
省略版を前提に「土=7」と思っていたのに、第2引数=2を使っていて本当は土=6だった、などの混同が起きます。ルールを複数作るほど混ざりやすいので、どちらかに統一するのが安全です。
曜日表示と日付のズレで判定が外れるケース
曜日文字(“土”“日”)を参照して色付けしている場合は、表示形式の違いが原因で判定が外れることがあります。たとえば、次のようなズレです。
表示が「土」なのに、式が「土曜日」を前提にしている
表示形式が変更され、「日」「Sun」「日曜日」などが混在した
日付セルの表示形式が変わり、TEXTの結果が意図せず変化した
曜日文字で判定するなら、まず「表示が何になっているか」を確定させます。一般的な例は次の通りです。
=TEXT($A2,"aaa")→ 「月」「火」…の1文字表記になりやすい=TEXT($A2,"aaaa")→ 「月曜日」「火曜日」…になりやすい
たとえば「土」判定なら次のようになります。
表示が「土」のとき:
=TEXT($A2,"aaa")="土"表示が「土曜日」のとき:
=TEXT($A2,"aaaa")="土曜日"
ただし、曜日文字判定は表の表示形式に影響されやすいので、可能であればWEEKDAY判定へ寄せた方が長期運用では安定します。特に、複数人で編集するファイルや、テンプレとして使い回すファイルでは、表示形式が変えられても壊れにくいWEEKDAYの方が事故が少なくなります。
エクセルで土日色付けを使い回す実践テク
ルールの複製と管理画面でのメンテナンス
条件付き書式は一度作ると放置しがちですが、運用が長いほど「ルールの管理」を使ったメンテナンスが効いてきます。特に、土曜・日曜・祝日・特定イベント日など、ルールが増えたときに整理できていないと、次のような事態が起きやすいです。
似たルールが重複し、どれが効いているか分からない
適用範囲がバラバラで、一部の行だけ色が付かない
ルールの順序が原因で、重要な色が上書きされて見えない
管理画面でやるべきチェック項目
ルール名(または条件)が意図通りか
適用先(範囲)が表の範囲をカバーしているか
ルールの順序が、優先したい色になっているか
不要なルールが残っていないか
複製を前提にするとミスが減る
日曜ルールを作ったあと、土曜ルールは「複製→数式の数字だけ変える→色を変える」とすると、操作ミスが減ります。特に$の付け方や参照セルを新規に入力するのは事故が起きやすいので、基本形をコピーして使い回すのがおすすめです。
また、表の列を追加したり、月が変わって行数が伸びたときは「適用範囲を伸ばす」だけで対応できるように、最初から少し広めに適用先を取っておくのも一つの手です(ただし広げすぎると別の表に影響するので、テンプレ運用の場合はテンプレ側で調整します)。
テンプレ化して別シートに展開する方法
「毎月同じ形式の勤務表を作る」「週次で同じフォーマットの予定表を作る」なら、毎回条件付き書式を作り直すよりも、テンプレ運用が圧倒的に安全です。
テンプレ運用の基本手順
「テンプレート」シートを1枚作る
表のレイアウト(見出し、列幅、罫線)を整える
条件付き書式(土日、祝日、必要ならイベント日)を完成させる
月が変わるタイミングで、テンプレートシートを右クリック → 移動またはコピー → コピーを作成して新しい月のシートにする
日付だけ更新し、運用開始
テンプレ運用が強い理由
条件付き書式の参照や$固定を毎回作り直す必要がない
表の形が崩れにくい(列を増やすなどの変更があっても、テンプレ側で一度直せば全月に反映しやすい)
複数人が触っても、ルールを壊しにくい
特に、祝日リストと組み合わせている場合は、テンプレにしておくことで「祝日リスト参照がズレる」「新しいシートで参照先が変わる」といった事故を減らせます。祝日リストは共通のシート(またはブック)に置き、テンプレから常に同じ場所を参照する構造にしておくと運用が安定します。
よくある質問
WEEKDAYの数字が環境で変わることはある
WEEKDAYの戻り値は、主に 第2引数で変わります。環境差というより「数式の指定の違い」と考えるのが正確です。混乱しやすいのは、次の2パターンです。
WEEKDAY(A2)(省略)…日=1、土=7WEEKDAY(A2,2)…月=1、土=6、日=7
どちらかに統一し、土日の判定数字も合わせて使えば、途中で分からなくなることは減ります。土日をまとめたいなら WEEKDAY( ,2)>=6 が分かりやすく、保守もしやすいのでおすすめです。
土日ではなく金土を色付けしたい場合はどうする
金土のように「連続する2日」をまとめて色付けしたい場合も、第2引数=2が扱いやすいです。理由は、平日が1〜5、土日が6〜7と連続して並ぶため、条件が作りやすいからです。
金土をまとめて色付け(種類=2)
金=5、土=6 なので、次の式で金土が該当します。
=WEEKDAY(A2,2)>=5
ただし、これだと日曜(7)も含まれてしまうため、金土だけにするならORで指定します。=OR(WEEKDAY(A2,2)=5,WEEKDAY(A2,2)=6)
金土を分けて色付け
金曜:
=WEEKDAY(A2,2)=5土曜:
=WEEKDAY(A2,2)=6
縦型で行全体に反映するなら、A2 を $A2 に置き換えるのを忘れないようにします。
祝日データはどこから用意するのがよい
祝日判定の仕組み自体は、祝日リストに正しい日付が入っていれば成り立ちます。重要なのは「社内や自分の用途で正しいと認められる祝日一覧」を一つ決め、毎年更新する運用を作ることです。
実務上は、次の方針にすると迷いが減ります。
祝日リストは「日付(数値としての日時)」で持つ
祝日リストの更新担当・更新タイミングを決める(年末や年度初めなど)
更新したら、翌年のシートで祝日色が付くかテストする(簡単な確認でよい)
Excel側の設計としては、祝日リストを別シートに置き、COUNTIFで判定する方式が最も分かりやすく、他の人に引き継ぎやすいです。表が縦型・横型どちらであっても、参照固定($)さえ理解していれば同じ考え方で展開できます。
まとめ
土日の色付けは、条件付き書式で自動化すると「手作業の塗り忘れ」と「毎月の繰り返し作業」をまとめて減らせます。ポイントは次の3つです。
日付があるなら、WEEKDAYで土日判定するのが安定
行全体や横型カレンダーでは、判定基準セルがズレないように$で固定する
祝日を扱うなら、祝日リスト+COUNTIFで運用できる形にする
まずは WEEKDAY( ,2)>=6 の1本で土日を色付けし、必要になったら「行全体」「祝日」「色分け」へ拡張していくと、無理なく完成度を上げられます。