エクセルで土日・祝日に自動で色を付ける方法|条件付き書式で表・カレンダーを見やすく!

エクセルで土日・祝日に自動で色を付ける方法|条件付き書式で表・カレンダーを見やすく!

本記事には広告(PR)が含まれます。
くわしくは プライバシーポリシー をご確認ください。

ガントチャートや出勤表、スケジュール表を作成していると、
土日や祝日をひと目で分かるように色を付けたい と思う場面は多いのではないでしょうか。

以前の私は、
「土曜日の列を選択して色を塗る」
「日曜日も同じように手作業で色を設定する」
といった形で、毎回地道に作業していました。

しかしこの方法だと、

  • 月が変わるたびにやり直しが必要

  • 塗り忘れやズレが起きやすい

  • 列が増えると作業量が一気に増える

といった問題があり、正直かなり面倒です。

そんなときに役立つのが 条件付き書式 です。
条件付き書式を使えば、

  • 日付を入力するだけで

  • 土日を自動で色分けできる

  • 祝日もまとめて色を付けられる

といった設定が可能になります。

この記事では、Excel初心者の方向けに、

  • 土日を自動で色付けする基本的な方法

  • 列全体・行全体に色を反映させるコツ

  • 祝日にも色を付ける方法

  • 「祝日だけ色がつかない」ときの対処法

を、画面操作のイメージがしやすい形で解説していきます。

「手作業で色を塗るのはもう限界…」という方は、
ぜひ条件付き書式を使った自動化にチャレンジしてみてください。

目次

条件付き書式で「土日」に自動で色を付ける方法

曜日を判定して土日を色付けする基本の考え方

Excelで土日を自動で色付けするために、
まず知っておきたいのが 「日付には曜日の情報が含まれている」 という点です。

私たちは普段、

  • 2025/2/1 → 土曜日

  • 2025/2/2 → 日曜日

というように、カレンダー感覚で曜日を判断していますが、
Excelの中でも日付は「曜日を含んだ数値」として管理されています。

この曜日情報を取り出すために使うのが、WEEKDAY(ウィークデイ)関数です。


WEEKDAY関数とは?

WEEKDAY関数で日付から曜日番号を取得しているExcel画面。月曜=1、日曜=7として表示されている。
WEEKDAY(A1,2)を使うと、月曜=1~日曜=7で曜日を数値として取得できます。

WEEKDAY関数は、
指定した日付が何曜日なのかを「数値」で返してくれる関数です。

例えば設定によって多少違いはありますが、一般的には次のように扱われます。

  • 月曜日 → 1

  • 火曜日 → 2

  • 水曜日 → 3

  • 木曜日 → 4

  • 金曜日 → 5

  • 土曜日 → 6

  • 日曜日 → 7

つまり、

  • 「6以上なら土日」

  • 「6と7だけを判定する」

といった条件を作ることで、
土日だけを自動で判定できる ようになります。


なぜ「条件付き書式」と相性がいいのか?

条件付き書式は、

「この条件に当てはまったら、色を付ける」

という仕組みです。

そこに WEEKDAY 関数を組み合わせることで、

  • セルの日付をチェック

  • 曜日を判定

  • 土日なら色を付ける

という流れを、自動で処理 してくれます。

一度設定してしまえば、

  • 月が変わっても

  • 日付を入れ替えても

  • 列や行が増えても

手作業で色を塗り直す必要はありません。


手作業で色付けしていた頃との違い

条件付き書式を使う前は、

  • 土曜の列を選択

  • 色を設定

  • 日曜も同じ作業を繰り返す

といった、地味で時間のかかる作業をしていました。

しかし条件付き書式に切り替えると、

  • 「日付が土日かどうか」をExcelが判断

  • 色付けは自動

  • 塗り忘れやズレも起きにくい

と、作業効率が一気に上がります。

ガントチャートや出勤表など、
毎月・毎週使い回す表ほど効果を実感しやすい 方法です。

WEEKDAY関数を使って土日を色付けする方法

ここからは、条件付き書式を使って土日を自動で色付けする手順を解説します。
まずは一番シンプルな形として、日付が入力されているセル自体に色を付ける方法から見ていきましょう。


① 日付が入力されているセルを選択する

まず、土日判定の基準となる 日付が入力されているセル を選択します。

例:

  • カレンダーの日付部分

  • 出勤表の日付行

  • ガントチャートの上段の日付行

※最初は「1列分」「1行分」など、範囲を絞って設定するのがおすすめです。


② 条件付き書式を開く

Excelの上部メニューから、次の順で操作します。

  • ホーム タブ

  • 条件付き書式

  • 新しいルール

    Excelの条件付き書式メニューから「新しいルール」を選択している画面。
    ホームタブ → 条件付き書式 → 新しいルール を選択します。

     

表示された画面で、
「数式を使用して、書式設定するセルを決定」
を選択します。


土日を判定する数式を入力する

数式欄に、次の式を入力します。

■ 土曜日だけ色を付ける場合

=WEEKDAY(A1,2)=6

■ 日曜日だけ色を付ける場合

=WEEKDAY(A1,2)=7
条件付き書式で数式=WEEKDAY(A1,2)=6や=7を入力している設定画面。
土曜は=6、日曜は=7として判定します。A1は選択範囲の左上セルに合わせます。

■ 土日をまとめて色付けする場合

=WEEKDAY(A1,2)>=6

この数式の意味は次の通りです。

WEEKDAY(A1,2)

→ 日付を「月曜=1 ~ 日曜=7」の数値に変換します。

>=6

→ 6(土曜)または 7(日曜)の場合に TRUE(条件成立)

※ A1 の部分は、選択範囲の左上セル(またはアクティブセル) に合わせてください。

土曜は=6、日曜は=7として判定します。A1は選択範囲の左上セルに合わせます。


④ 色を設定する

数式を入力したら、書式 ボタンをクリックします。

  • 塗りつぶし → 好きな背景色を選択

  • 文字色を変えたい場合はフォント色を設定

設定後、OK を押して画面を閉じます。

条件付き書式のルール管理画面で土曜と日曜のルールが設定されている状態。
土曜・日曜それぞれにルールを設定すると、色を分けて表示できます。

⑤ 実際に色が付くか確認する

設定が完了すると、

  • 土曜日・日曜日 → 自動で色が付く

  • 平日 → 何も変わらない

という状態になります。

日付を別の日に変更しても、
曜日に応じて色が自動で切り替わる のがポイントです。

条件付き書式がずれる原因とは?エラーが出るときの対処法も解説

条件付き書式を設定するときに、

  • 設定はできたのに、色が付く場所がずれている

  • 「この数式には問題があります」と表示されて設定できない

といったトラブルが起こることがあります。
原因は大きく2つに分かれるので、順番に確認してみましょう。


① 設定できない(エラーが出る)とき:まず数式の入力ミスをチェック
条件付き書式で数式入力時にエラーが表示される画面(WEEKDAY関数の入力ミス例)
数式の書き方が誤っていると、このようにエラーメッセージが表示されます。
「>=」と「=>」の違いなども要チェックです。

数式が少しでも間違っていると、エラーメッセージが出て登録できません。

よくある例:

  • >=(正しい)と =>(間違い)

  • かっこ ( ) の閉じ忘れ

  • ,(カンマ)や ;(セミコロン)の入力ミス(環境による)

✅ まずは 数式をそのままコピーして見直すのがおすすめです。


② 設定はできたのに“ずれる”とき:アクティブセル(白い1セル)をチェック
条件付き書式設定時にアクティブセルが左上以外になっている例
複数セルを選択していても、明るく表示されている「1セル」が基準になります。
左上セルになっているか確認しましょう。

数式が正しくても、基準セルがずれると色の付く位置もずれます。

Excelの条件付き書式は、選択範囲の左上ではなく
「最後にクリックした白いセル(アクティブセル)」を基準に数式を作るためです。

対策としては、

  1. まず 範囲の左上セルをクリック

  2. そのままドラッグして範囲選択

  3. 条件付き書式を設定

の順で操作すると安全です。

また、ルールの管理で
「数式の参照セル」と「適用先の先頭セル」が一致しているかも確認しておきましょう。

条件付き書式の適用範囲と数式の基準セルがずれている例
数式の基準セル(A4)と適用範囲(A5:A32)がずれているため、色付け範囲もずれてしまいます。

③ エラーが出ないのに色が変わらないとき

条件付き書式は、数式に誤りがあってもエラーメッセージが表示されないことがあります。
そのため「登録はできたのに色が変わらない」という状態になることがあります。

その場合は、次の点を確認してみましょう。

  • 関数名のスペルが正しいか(WEEKDAY など)
  • 参照セルが意図した位置を指しているか
  • 絶対参照($)の位置が正しいか

一度、通常のセルに同じ数式を入力して動作確認すると原因を見つけやすくなります。

条件付き書式で関数名を誤って入力した例(エラーは出ないが色が変わらない状態)
関数名を誤って入力しても、条件付き書式は登録できてしまうことがあります。
その場合、エラー表示は出ず、色も変わりません。

この方法が向いているケース

この基本設定は、次のようなケースに向いています。

  • 日付セル自体を目立たせたい

  • 小さめのカレンダー

  • シンプルな出勤表・予定表

一方で、

  • 「列全体に色を付けたい」

  • 「ガントチャート全体を土日で区切りたい」

といった場合は、もう一工夫が必要になります。

ガントチャート用の日付を自動生成する方法
(DATE関数+表示形式の設定)

ここまでの説明では、
縦に日付を並べたシンプルな表を使って解説しました。

実際の業務では、
横に日付を並べた「ガントチャート形式」で使うことが多いでしょう。

ただし、見た目が「1・2・3」と数字だけになっている場合でも、
実際には日付データが入っていることが重要です。


今回のテストファイルの設定方法

今回のガントチャートでは、
「年」と「月」を変更すると、自動で日付が変わる仕組みにしています。

① 月初の日付をDATE関数で作成
=DATE(年セル, 月セル, 1)

これで、その月の1日を作成します。

Excelで=DATE($A$1,$C$1,1)を使って指定した年と月の1日を作成している画面
DATE関数で「指定した年・月の1日」を自動作成します

② 2日目以降は前日に+1
=前のセル+1

これで横にコピーすれば、日付が自動で増えていきます。

Excelで=B3+1の数式を使い、前日のセルから1日ずつ増やしている画面
「前の日付+1」で横方向に日付を自動展開できます

③ 月末以降は空白にする(必要な場合)

29〜31日が存在しない月の場合は、
IF関数を使って空白にしています。

※この方法については、別記事で詳しく解説しています。

エクセルで31日がない月を自動で非表示にする方法|IF関数でカレンダーを見やすく!


表示形式を「d」に設定する理由

日付データは

2026/2/1

という形で入っていますが、
表示形式を「ユーザー定義 → d」に設定すると、

1

のように“日”だけ表示できます。

見た目は数字ですが、
中身はきちんと日付データです。

この状態であれば、
WEEKDAY関数が正しく曜日を判定できます。

それでは、この日付データを利用して、ガントチャート全体に土日の色を反映させてみましょう。

Excelのセルの書式設定画面でユーザー定義の表示形式をdに変更している画面
表示形式を「d」に変更すると、日付はそのままで「日」だけ表示できます
※表示形式を変更しても「中身の値」は変わりません。
条件付き書式やWEEKDAY関数も正しく動作します。
ガントチャート用に日付が1から横に並び、表示形式が日付のみになっているExcel画面
ガントチャート用の日付行が完成した状態

ここまでで、横並びの日付データが完成しました。

次は、この日付を基準にして、
ガントチャート全体を土日で色分けする方法を見ていきましょう。

列全体・行全体に土日の色を反映させる方法

先ほどの基本設定では、
日付が入力されているセルだけ に色が付きました。

しかし実務では、

  • 土日の列全体を薄く色分けしたい

  • ガントチャートで土日を一目で区切りたい

  • 出勤表で「この日は休日」とすぐ分かるようにしたい

といったケースが多いですよね。

ここでは、日付を基準にして、列全体(または行全体)に色を付ける方法を解説します。


なぜ「日付セル」と「色を付けたい範囲」を分ける必要があるのか?

ポイントはここです。

  • 曜日を判定するのは「日付セル」

  • 色を付けたいのは「別のセル範囲」

つまり、

「この列の上にある日付が土日なら、列全体を色付けする」

という考え方になります。

この仕組みを作るために、
条件付き書式の数式では 参照の仕方 を少し工夫します。


① 色を付けたい範囲を先に選択する

まず、実際に色を付けたい範囲を選択します。

例:

  • ガントチャートの作業エリア全体

  • 出勤表の勤務時間欄

  • 日付の下に並んでいる予定表部分

※「日付行」は含めても含めなくてもOKです。


② 条件付き書式 → 新しいルールを開く

操作は先ほどと同じです。

  • ホーム

  • 条件付き書式

  • 新しいルール

  • 「数式を使用して、書式設定するセルを決定」

を選択します。


③ 日付行を参照する数式を入力する

ここで入力する数式の例がこちらです。

=WEEKDAY(A$1,2)>=6

  • A$1列の上にある日付セル を指します

  • 実際のシートに合わせて行番号は調整してください

この数式のポイントは、行番号に「$」が付いていることです。


数式の意味をかみ砕いて説明すると…
  • A$1
    → 「常に1行目の日付を見る」

  • 列は自動で A → B → C と切り替わる

  • 行だけ固定されている

その結果、

  • A列なら A1 の日付をチェック

  • B列なら B1 の日付をチェック

  • C列なら C1 の日付をチェック

という動きになり、
日付行を基準に列全体へ色を反映できます。


④ 色を設定して完了

あとは書式設定で、

  • 薄めの背景色

  • 文字が見やすい色

を設定して OK を押します。

これで、

  • 土日の列 → 自動で色付き

  • 平日 → そのまま

という状態になります。

ガントチャートの日付行を基準に、WEEKDAY関数を使って列全体に土日の色を反映させる条件付き書式の設定画面
列全体に色を付ける場合は「=$A3」などの参照を固定し、日付行を基準に判定します。
ガントチャートで土曜日・日曜日の列全体が自動で色分けされている状態のExcel画面
土日列が自動で色分けされるため、ガントチャートでも休日が一目で分かります。

行全体に色を付けたい場合は?

考え方は同じですが、

  • 日付が左側にある

  • 行ごとに曜日を判定したい

という場合は、参照を 列固定 にします。

例:

=WEEKDAY($A1,2)>=6

※A1の部分は、必ず「選択範囲の左上セル」に合わせてください。

  • $A1 → 列を固定

  • 行番号は自動で切り替わる

これで、行単位の土日判定が可能です。

WEEKDAY関数で左端の日付を基準に行全体へ土日の色を反映させる条件付き書式の設定画面
左端の日付列を基準に「$A4」のように列固定すると、行全体に土日の色を反映できます。

この設定が特に活躍する場面

  • ガントチャート

  • シフト表・出勤表

  • プロジェクト進捗管理表

  • 月間スケジュール表

一度設定しておけば、
日付を差し替えるだけで自動対応できるのが最大のメリットです。

補足:目的や範囲に応じて、同じ条件を複数設定することもあります

Excelの条件付き書式ルール管理画面で、土日判定のルールを複数設定している状態
土日判定の条件を用途ごとに分けて設定しています(背景色用・フォント色用など)

ここまでで、WEEKDAY関数を使って
土日を判定し、条件付き書式で色を付ける方法 を紹介しました。

条件付き書式は、
「1つの条件=1つの設定」ではなく、目的に応じて複数設定できる
という点も知っておくと、表の見やすさがさらに向上します。


同じ「土日判定」でも、色を付けたい内容は違うことがある

実務では、同じ土日でも
場所によって強調したいポイントが異なる ことがよくあります。

例えば次のようなケースです。

  • 日付部分
    → 土日は フォント色も変えて ひと目で休日と分かるようにしたい

  • ガントチャート(作業エリア)
    → フォント色はそのままで、背景色だけを薄く色付けしたい

このように、
「土日であること」は共通でも、書式の目的は異なる ため、
条件付き書式を分けて設定する方が管理しやすくなります。


条件は同じ、書式だけ変えるイメージ

この場合、使う数式はどちらも同じです。

=WEEKDAY(A1,2)>=6
  • 日付行用の条件付き書式
    → フォント色+(必要に応じて)背景色

  • ガントチャート用の条件付き書式
    → 背景色のみ

というように、
「判定条件は共通」「適用範囲と書式だけを変える」
という考え方になります。


複数設定しても問題ないの?

条件付き書式を複数設定しても、
処理が重くなったり、エラーになることは基本的にありません

むしろ、

  • 見た目を調整しやすい

  • 後から修正しやすい

  • 他の条件(祝日・今日の日付など)を追加しやすい

といったメリットがあります。


初心者の方は「役割ごとに分ける」と覚えると安心

条件付き書式は、

  • 何を判定するか

  • どの範囲に

  • どんな見た目を付けたいか

を分けて考えると、混乱しにくくなります。

「土日判定」は共通、
「色の付け方」は用途ごとに調整する

この考え方で設定すれば、
ガントチャートや出勤表も無理なく管理できます。

祝日も含めて色を付ける方法と、色がつかない時の対処法

土日の色付けができるようになると、
次に気になるのが 「祝日も一緒に色を付けたい」 という点ではないでしょうか。

出勤表やガントチャートでは、

  • 土日は休日

  • 平日でも祝日は休日

という扱いになることが多く、
祝日をどう判定するか がポイントになります。


祝日に色を付ける基本的な考え方

まず知っておきたいのは、
Excelは祝日を自動で判定してくれない という点です。

土日と違って、

  • 「この日付は祝日かどうか」

という情報は、
Excelの中には最初から用意されていません。

そのため、祝日を色付けしたい場合は、

「この日付が祝日かどうかを、別の方法で判定する」

必要があります。


一番よく使われる方法:祝日一覧を作成する

実務で最も安定して使われているのが、
祝日を一覧にして管理する方法 です。

やり方のイメージはシンプルで、

  • 別シートに祝日の日付を一覧で入力

  • 条件付き書式で
    「この日付が祝日一覧に含まれていたら色を付ける」

という仕組みを作ります。

この方法のメリットは、

  • 年が変わっても使い回しやすい

  • 独自の休日(会社独自の休業日など)も追加できる

  • 土日とは別ルールで管理できる

といった点です。


土日と祝日をまとめて色付けする考え方

祝日一覧を用意したら、

  • 土日判定(WEEKDAY関数)

  • 祝日判定(祝日一覧との一致)

条件付き書式で組み合わせる ことで、

  • 土日

  • 祝日

のどちらにも色を付けられるようになります。

このときの考え方としては、

  • 「土日用ルール」

  • 「祝日用ルール」

分けて設定する のがおすすめです。

理由は、

  • 祝日だけ色を変えたい

  • 祝日ルールを一時的に無効にしたい

といった調整がしやすくなるためです。

COUNTIF関数を使って祝日シートの一覧と照合し、条件付き書式を設定している画面
祝日一覧を別シートに作成し、COUNTIF関数で一致する日付を色付けしています

「祝日だけ色がつかない」ときに多い原因

祝日の色付けで、初心者の方がよくつまずくポイントもあります。

ここでは、祝日設定特有の「色が付かない原因」に絞って解説します。

特に多いのが、次のようなケースです。

  • 日付が「文字列」になっている

  • 表示形式だけ日付で、中身が文字

  • 祝日一覧と日付の形式が揃っていない

見た目は同じ日付でも、
Excelの中では 別物として扱われている ことがあります。


色がつかない時のチェックポイント

祝日に色が付かない場合は、
次の点を順番に確認してみてください。

  • 日付セルが本当の日付データか

  • 祝日一覧も日付形式になっているか

  • 条件付き書式の「適用先」が正しいか

  • 祝日一覧の範囲がずれていないか

このあたりを見直すだけで、
問題が解決するケースも多いです。

祝日一覧が文字列形式になっており、COUNTIF関数で正しく判定されない状態の画面
祝日が「文字列」形式になっていると、見た目が日付でも判定されません。

祝日設定は「完璧を目指さなくてOK」

祝日対応は少し手間に感じるかもしれませんが、
最初から完璧にしなくても問題ありません。

  • まずは土日だけ自動化

  • 必要になったら祝日を追加

という進め方でも十分実用的です。

表が見やすくなり、
手作業での修正が減るだけでも効果は大きい ので、
無理のない範囲で取り入れてみてください。

まとめ|土日・祝日の色付けは条件付き書式で自動化しよう

Excelで土日や祝日に色を付けたい場合、
条件付き書式を使えば、手作業での色付けは不要 になります。

この記事で紹介したポイントを整理すると、次の通りです。

  • 土日は WEEKDAY関数 を使えば自動で判定できる

  • 日付セルだけでなく、列全体・行全体 に色を反映させることも可能

  • 目的に応じて

    • フォント色を変える

    • 背景色だけを薄く付ける
      など、書式を使い分けられる

  • 祝日は 別シートの祝日一覧 を使うことで柔軟に対応できる

  • 色がつかない場合は、日付の形式や適用範囲を見直すと改善しやすい

一度設定してしまえば、
月が変わっても日付を入れ替えるだけで自動対応できるため、
ガントチャートや出勤表、スケジュール管理がぐっと楽になります。

まずは 土日の自動色付けだけ でも十分効果がありますので、
ぜひ条件付き書式を使った自動化を取り入れてみてください。

よくある質問(FAQ)

Q1. エクセルで土日だけ色を付けるにはどうすればいいですか?

WEEKDAY関数と条件付き書式を組み合わせます。

例:

=WEEKDAY(A1,2)>=6

この数式を条件付き書式の「数式を使用して、書式設定するセルを決定」に入力すれば、土日だけ自動で色付けできます。


Q2. 条件付き書式で土日がずれて表示されるのはなぜですか?

原因の多くは「基準セルのズレ」です。

条件付き書式は、選択範囲の左上セルではなく、
アクティブセル(最後にクリックしたセル)を基準に数式を作ります。

左上セルからドラッグして選択するのが安全です。


Q3. 条件付き書式でエラーが出ないのに動かないのはなぜ?

条件付き書式は、数式に誤りがあっても登録できてしまう場合があります。
関数名のスペルミスや参照のずれが原因のことが多いです。


Q4. ガントチャート全体を土日で色分けするには?

日付行を基準に列固定で判定します。

=WEEKDAY(B$3,2)>=6

このように行番号を固定すれば、
列全体に土日の色を反映できます。


Q5. エクセルで祝日も自動で色を付けるには?

祝日一覧を別シートに作成し、
COUNTIF関数を使って判定します。

例:

=COUNTIF(祝日!$B$2:$B$20,B3)>0

祝日一覧と一致した日付だけ色を付けることができます。

祝日一覧は必ず「日付形式」にしておきましょう。


Q6. 祝日に色が付かないのはなぜですか?

主な原因は次の通りです:

  • 祝日一覧が文字列形式になっている

  • 日付セルが本当の日付データではない

  • 条件付き書式の適用範囲がずれている

特に「文字列形式」は見た目では分かりにくいので注意が必要です。


Q7. WEEKDAY関数の「2」は何を意味していますか?

第2引数「2」は、曜日の番号を

月曜=1 ~ 日曜=7

で返す設定です。

土日判定を行う場合は、
この形式にしておくと分かりやすくなります。


Q8. まずは最低限、どこまで設定すれば十分ですか?

最初は、

  • 土日だけを自動で色付けする

ところまでできれば、十分実用的です。

必要になったタイミングで、

  • 列全体への色付け

  • 祝日の追加

と段階的に拡張していくのがおすすめです。

【関連記事】

※外部リンク※

※おすすめの動画講座 (PR)

条件付き書式や日付処理を、動画でまとめて学びたい方には
以下の講座も参考になります。
書籍よりも操作の流れを目で確認したい方におすすめです。

※参考書籍 (PR)

Excelの基本操作や、条件付き書式を含む便利機能を
手元で確認しながら学びたい方には、次の書籍も役立ちます。

※本ボックスにはアフィリエイトリンク(PR)が含まれます。
くわしくは プライバシーポリシー へ。

エクセルで土日・祝日に自動で色を付ける方法|条件付き書式で表・カレンダーを見やすく!
最新情報をチェックしよう!