スタッフの出勤管理に欠かせないシフト表。しかし、土日や祝日を毎月手作業で探して色分けしていると、多くの時間とミスが発生します。
本記事では、Excelの機能だけでワークシート上の土曜日・日曜日を自動判定し、条件付き書式で色分けする方法を徹底解説します。
関数の設計から条件付き書式の設定、応用テクニック、トラブルシュートまで網羅。これをマスターすれば、毎月のシフト作成がぐっと効率化できるはずです。
1.土日色分けのメリットとExcelで自動化すべき理由
シフト表で土日を色分けすることは、休日出勤の確認ミスや代休申請の管理漏れを防ぐうえで非常に重要です。しかし、手動でセルの背景色を変えると作業時間が膨大になるうえ、月ごとに曜日配置が変わるため、毎月同じ手順を繰り返すのは非効率です。
そこでExcelの関数と条件付き書式を組み合わせることで、日付を入力するだけで土日が自動的に色分けされ、運用ミスを抑えながら作業時間を大幅に短縮できます。
1-1. 休日管理の見える化で業務ミスを削減
土日は通常の営業日と異なる働き方が求められるため、シフト表上で一目で区別できることがミス防止の基本です。Excelで自動色分けを設定しておけば、誤ってスタッフを土日に配置した際にもすぐに気づけるため、労務トラブルを未然に防ぐことができます。
1-2. 毎月の繰り返し作業を自動化して工数削減
月が変わるたびに日付と曜日を修正し、土日のセルを手動で塗りつぶしていた従来のやり方では、1シートあたり数十分の作業が発生します。
条件付き書式を使えば「日付列の値が土曜日なら○色、日曜日なら×色」というルールを一度設定するだけで、以降の日付修正に追従して自動的に色が変わるため、繰り返し作業をゼロにできます。
2.土日判定のための関数基礎:WEEKDAY関数の使い方
Excelで曜日を判定するにはWEEKDAY関数が便利です。「=WEEKDAY(日付セル, 2)」とすると、1=月曜、2=火曜…7=日曜の数値を取得できます。これを条件付き書式の条件式で使うことで、土曜日(6)と日曜日(7)を検出できます。
2-1. 基本構文と書式
WEEKDAY関数の構文は以下のとおりです。=WEEKDAY(シリアル値, 種類)
「シリアル値」には日付を入力したセルを指定し、「種類」に2を指定すると、月曜始まりの1~7形式で曜日を返します。
2-2. 土日判定のための応用式
土曜日の判定には =WEEKDAY(A3,2)=6、日曜日には =WEEKDAY(A3,2)=7 を使います。条件付き書式ではこれらを組み合わせ、土曜なら青、日曜なら赤といった色分けルールを複数登録します。
3.条件付き書式で土日の色分けを実装する手順
ここからは具体的な条件付き書式の設定手順です。Excelのバージョンによるメニュー差異を補足しながら、画面キャプチャ不要でステップを詳細に説明します。
3-1. 対象範囲の選択
まずシフト表の「日付セルが並ぶ行・列」をドラッグして選択します。たとえばC3:AG3 の範囲(1カ月の日付行)や、C3:AG20 のようにスタッフ行を含めた全エリアを選択しても構いません。一度に設定すれば、シフト表全体の土日が色分けされます。
3-2. 条件付き書式メニューの起動
Excelのリボンから[ホーム]→[条件付き書式]→[新しいルール]を選択。続いて「数式を使用して、書式設定するセルを決定」をクリックします。
3-3. 土曜日用のルール作成
ルールの数式欄に=WEEKDAY(C$3,2)=6と入力。ここでC$3 は範囲選択した中で最上列かつ日付が入力されている先頭セルを指定します。書式ボタンを押し、日付セルの背景を淡いブルーに設定してOK。これで土曜日が青くなります。
3-4. 日曜日用のルール作成
同様に[新しいルール]で=WEEKDAY(C$3,2)=7を条件とし、背景を淡いピンクに設定します。以上で範囲内の土日が自動的に色分けされる仕組みが完成です。
4.月替わりに自動で連動させるテクニック
条件付き書式が設定できたら、あとは月を入力するセルを用意し、日付行を自動生成すれば、土日の色分けが月替わりに追従します。DATE関数とCOLUMN関数を使った日付自動生成の仕組みを以下で解説します。
4-1. 月と年を入力するセルの準備
シート上部に「年」「月」セルを設け、それぞれB1・B2セルに年と月を入力できるようにします。ユーザーはここを変更するだけで、日付行全体が自動更新されるように構成します。
4-2. 日付セルにDATE関数を組み合わせる
C3セルに=DATE($B$1,$B$2,COLUMN()-2)と入力します。COLUMN()-2 はC列が3列目のため1日、D列が4列目で2日…というように日付を自動計算します。C3セルを右方向に1ヶ月分コピーすれば、1日~末日までの日付が並びます。
4-3. 自動更新後の色分け確認
年・月セルを変えるとDATE関数が再計算され、日付セルが更新されます。条件付き書式は日付セルの値を参照しているため、新たにセットされた土日も自動で青/ピンクに色分けされます。
5.応用編:祝日判定と色分けの組み合わせ
土日の色分けに加え、祝日も自動で赤文字にしたい場合は、祝日リストとVLOOKUPを組み合わせて条件付き書式に取り入れます。
5-1. 祝日リストシートの作成
別シート「HolidayList」にA列に日付、B列に祝日名を登録します。毎年更新が必要ですが、一度構築すれば以降は追加登録で対応可能です。
5-2. 祝日判定の条件付き書式
シフト表の条件付き書式に新たなルールを追加し、数式に=NOT(ISNA(MATCH(C$3,HolidayList!$A:$A,0)))を指定します。書式でフォント色を赤に設定すれば、土日とは独立して祝日セルが赤字になります。
6.複数月・複数店舗管理への拡張方法
本章では、複数シートにまたがる月次シフトや、複数拠点のシフトを統合管理するアイデアを紹介します。
6-1. シート連動マスターシフト表の作成
各店舗ごとに「Shift_January」「Shift_February」…のようなシートを用意し、マスターシフト表シートにINDIRECT関数で参照。マスターシート側ではMonthドロップダウンから月を選択すると店舗別シートを読み込み、統合ビューが完成します。
6-2. Power Queryによる集計ダッシュボード化
シフトシートをテーブル化しておき、Power Queryで月次シフトデータを結合。ダッシュボードシートに集計表やグラフを配置すると、リアルタイムに各店舗の稼働状況や土日比率を可視化できます。
7.トラブルシューティング:よくある失敗と解決策
条件付き書式や自動生成で躓きがちなポイントと、その対処方法をまとめました。
7-1. 書式が全セルにかかってしまう
数式内の絶対参照・相対参照が誤っていると書式がずれます。条件付き書式の「適用先」を見直し、数式中のドルマーク配置が正しいか確認しましょう。
7-2. 列を挿入すると色分けが崩れる
COLUMN関数で列番号を取得している場合、挿入により列番号がずれます。代替策としてOFFSET関数やINDEX関数を組み合わせることで、列の追加に強い設計が可能です。
まとめ:Excelでスマートに土日色分けシフト表を運用しよう
「エクセルのシフト表土日表記色分け」をテーマに、WEEKDAY関数による土日判定、DATE関数を使った日付自動生成、条件付き書式の設定手順、祝日判定・複数シート連動・Power Query拡張、トラブル対策まで解説しました。
これらをマスターすれば、毎月のシフト作成はもちろん、複数拠点・複数月の統合管理も簡単に。ぜひ本記事を参考に、Excelでのシフト管理を一段とスマートに進化させてください!

