エクセルのシフト表で責任者の不在をチェックするときは、勤務表の左に「役割列」、下に「役割ごとの人数の行」を追加しましょう。職員の役割と勤務記号を突き合わせ、責任者が0人の日を赤く表示する方法です。
日別の人数だけでなく、早番・遅番も分けて確認します。以下の6人・1週間の架空例を使い、数式の入力、色付け、勤務の入れ替えまで進めてください。行うのは人数の自動集計と不在の表示であり、勤務の自動割当ではありません。配布ファイルへ入力し直さず、既存の表に追加する手順を紹介します。
責任者の不在は、出勤者の総人数と分けて考える
出勤するスタッフが4人いても、責任者を担当できる人が全員休みなら、責任者は0人です。総人数を確認するだけでは、この不足を見つけられません。
ここでは、レジ責任者や店長代理など、職場で決めた役割を担当できる職員に「○」を付けます。架空例の条件は「各日に責任者1人以上」。さらに「早番・遅番にもそれぞれ1人以上」という条件を追加して確かめます。
有資格者も、責任者とは別に集計してください。介護・保育・薬局などで使う場合は、確認する資格を一種類ずつ決めます。本稿の人数は職場の確認用であり、法令上の配置義務や、資格ごとの配置基準への適合を判定するものではありません。
勤務表と役割表をそろえる
最初に、元のブックを複製してから作業します。役割の一覧を手元に置き、勤務表の氏名と照合してください。
責任者・有資格者の列を追加した記入例
次は、ある年の9月1日(月)〜7日(日)の1週間を使った架空例です。B列を職員名、C列を責任者、D列を有資格者、E〜K列を日付にします。見出しは2行目、職員は3〜8行目に入力する構成です。
| 行番号 | B:職員 | C:責任者 | D:有資格者 | E:9/1(月) | F:9/2(火) | G:9/3(水) | H:9/4(木) | I:9/5(金) | J:9/6(土) | K:9/7(日) |
|---|---|---|---|---|---|---|---|---|---|---|
| 3 | A | ○ | ○ | 早 | 遅 | 早 | 休 | 早 | 早 | 遅 |
| 4 | B | ○ | 遅 | 早 | 休 | 休 | 遅 | 早 | 休 | |
| 5 | C | ○ | 早 | 休 | 休 | 早 | 遅 | 休 | 早 | |
| 6 | D | 遅 | 早 | 遅 | 遅 | 休 | 早 | 休 | ||
| 7 | E | 休 | 遅 | 早 | 早 | 遅 | 休 | 遅 | ||
| 8 | F | 早 | 休 | 遅 | 遅 | 早 | 遅 |
左端の「行番号」は説明用で、入力する列ではありません。Fの9月7日、つまりK8は未入力のままにします。
Aは責任者と有資格者の両方、Bは責任者のみ、Cは有資格者のみです。役割のない欄は空欄とし、印は数式と同じ「○」に統一します。「〇」「◯」など、似た別の文字を混ぜないでください。
「休」と空欄を勤務に数えない
この例では、勤務記号を次のように決めます。
- 早:早番、9:00〜17:00
- 遅:遅番、13:00〜21:00
- 休:公休。勤務人数に含めない
- 空欄:未入力。勤務可能とは判断せず、人数に含めない
1人につき1日1記号とし、同じ日に早番と遅番の両方へ入れることは想定しません。
入力をそろえるには、E3:K8を選び、[データ]→[データの入力規則]で[リスト]を指定します。[元の値]を 早,遅,休 とし、未入力を残すため[空白を無視する]をオンにします。入力規則では、選択肢や入力できる値を制限できます。操作案内は2026-09-22時点のWindows版Excelを想定しています。(Microsoft)
既存の表に「早番」「休み」などが入っていたら、記号をそろえてから集計へ進みましょう。半休・研修・有休がある職場では、各記号を役割の人数に含めるか、先に決めておく必要があります。
SUMPRODUCTで日別の責任者・有資格者を数える
勤務表の下に、10行目「日別・責任者」、11行目「日別・有資格者」の集計欄を作ります。
SUMPRODUCTは、対応する範囲の値を掛け合わせて合計する関数です。組み合わせる範囲は、行数と列数をそろえる必要があります。今回なら、役割列も勤務記号も3〜8行目の6人分です。(Microsoft)
E10に入れる式:日別の責任者数
=SUMPRODUCT(($C$3:$C$8="○")*(E$3:E$8<>"休")*(E$3:E$8<>""))
この式では、職員ごとに次の3条件を組み合わせています。
- C列に責任者の「○」がある
- その日の勤務が「休」ではない
- その日の勤務が空欄ではない
3条件がそろった職員を1人として数える考え方です。「早」の記号だけを数える方法と違い、役割のない職員は人数に入りません。
E11に入れる式:日別の有資格者数
=SUMPRODUCT(($D$3:$D$8="○")*(E$3:E$8<>"休")*(E$3:E$8<>""))
責任者のC列を、有資格者のD列へ変更した式です。
入力後はE10:E11を選択し、右下のフィルハンドルをK列までドラッグします。役割範囲の $C$3:$C$8 などは固定し、勤務範囲の列だけがE、F、G……と移る形でコピーします。(Microsoft)
自分の表で職員が50行目までいるなら、役割側も勤務側も末尾を50行目へ変更してください。片方だけ広げないことが重要です。
なお、この日別式は「休でも空欄でもない記号」をすべて勤務として数えます。研修で店舗を離れる日や半休を、そのまま終日の配置確認に使うことはできません。自店の勤務記号に合わせた条件変更は、担当者に残る作業です。
別シートの役割表は、職員の並び順を確認する
別シート「役割表」にも、B列=職員名、C列=責任者、D列=有資格者を用意した場合を考えます。
職員の並び順と行数が勤務表と同じなら、責任者の参照を 役割表!$C$3:$C$8 に置き換えられます。ただし、行数が同じでも並びが違えば、別人の役割と勤務を掛け合わせてしまいます。
並びが違うときは、勤務表のC3に次の式を入れ、C8まで下へコピーして役割列を作ります。
=IF(COUNTIFS(役割表!$B$3:$B$8,$B3,役割表!$C$3:$C$8,"○")>0,"○","")
COUNTIFSは複数条件をすべて満たす件数を数える関数です。この式では「職員名が一致し、責任者が○の行」があるかを調べています。(Microsoft)
有資格者は、役割表の参照先をC列からD列へ変えてください。氏名の表記揺れや同姓同名がある場合は、両表で共通の職員IDを照合に使います。見つからなかった職員を「役割なし」と決めつけず、一覧への登録漏れも確認しましょう。
早番・遅番の責任者も別々に数える
日別で1人いても、その人が早番なら、遅番の責任者がいるとは限りません。12行目に「早番・責任者」、13行目に「遅番・責任者」を追加します。
E12に入れる式:早番の責任者数
=SUMPRODUCT(($C$3:$C$8="○")*(E$3:E$8="早"))
E13に入れる式:遅番の責任者数
=SUMPRODUCT(($C$3:$C$8="○")*(E$3:E$8="遅"))
日別式と同様に、E12:E13をK列まで右へコピーしてください。有資格者も時間帯別に調べる場合は、集計行を追加し、C列の参照をD列へ置き換えます。
ただし、この2行が数えるのは勤務区分ごとの人数です。早番と遅番は13:00〜17:00に重なるため、「早番0人」が9:00〜17:00の全時間に不在という意味ではありません。この例でほかの勤務形態がなければ、早番0人では9:00〜13:00、遅番0人では17:00〜21:00に不在が生じます。
休憩や途中外出を除いた在席確認も、今回の式の対象外です。出勤者の総人数を時刻ごとに数える手順は、別記事「Excelのシフト表で時間別人数を集計する方法」で説明しています。(シフトラ)
条件付き書式で0のセルを赤くする
E10:K13に4行分の数式が入ったら、不在のセルを色付けします。条件付き書式では、数式による判定結果を使って塗りつぶしなどの書式を設定できます。(Microsoft)
- E10を起点にE10:K13を選択する
- [ホーム]→[条件付き書式]→[新しいルール]を開く
- [数式を使用して、書式設定するセルを決定]を選ぶ
- 数式に
=E10=0と入力する - [書式]の[塗りつぶし]で赤を選び、確定する
- [ルールの管理]で適用先が
=$E$10:$K$13になっているか確認する
判定式のE10には、$を付けません。各セル自身が0かどうかを判定させるためです。=$E$10=0 にすると、範囲全体がE10だけを見て色付けされてしまいます。(Microsoft)
色だけでなく、人数の数値も読める状態にしておきましょう。この規則が示すのは「0人」であり、必要人数が2人以上の職場で、1人の不足まで検出する設定ではありません。
9月4日の不在を直し、人数と色の変化を確かめる
記入例を入力した場合、修正前の日別人数は次の値になります。手元の集計結果と照合してください。
| 集計行 | 9/1 | 9/2 | 9/3 | 9/4 | 9/5 | 9/6 | 9/7 |
|---|---|---|---|---|---|---|---|
| 10:日別・責任者 | 2 | 2 | 1 | 0 | 2 | 2 | 1 |
| 11:日別・有資格者 | 2 | 1 | 1 | 1 | 2 | 1 | 2 |
9月4日はA・Bがともに休みです。C・D・E・Fの4人は勤務していますが、責任者の○がある人はいません。日別の責任者行では、H10だけが赤になるのが確認点です。
ここで、Bの勤務を次のように入れ替えます。
- H4:9月4日を「休」から「早」へ変更
- J4:9月6日を「早」から「休」へ変更
これは、Bが変更に対応できると仮定した修正例です。実際には本人の勤務可能日やシフト希望、連勤なども確認してから変更してください。
修正後の責任者数は、9月1日から順に2、2、1、1、2、1、1です。9月4日は1人となり、9月6日もAが残るため1人。E10:K10がすべて1以上となり、日別の責任者行から赤が消えることを確かめます。有資格者数は変わりません。
入力しても人数が更新されない場合は、ブックの自動計算が有効か確認します。Windows版では[ファイル]→[オプション]→[数式]の計算設定で[自動]を選べます。(Microsoft)
日別の0が消えても、時間帯別の不足は残る
同じ修正後の表を、12・13行目で確認すると次の人数になります。
| 集計行 | 9/1 | 9/2 | 9/3 | 9/4 | 9/5 | 9/6 | 9/7 |
|---|---|---|---|---|---|---|---|
| 12:早番・責任者 | 1 | 1 | 1 | 1 | 1 | 1 | 0 |
| 13:遅番・責任者 | 1 | 1 | 0 | 0 | 1 | 0 | 1 |
9月7日の早番と、9月3日・4日・6日の遅番には、責任者がいません。日別の赤が消えても、時間帯別には4か所の赤が残ります。
この例は、休みの入れ替えだけでは解決できません。1人1日1区分という前提では、必要なのは7日×2区分=14勤務です。一方、責任者の勤務はAが6勤務、Bが4勤務の合計10勤務で、4勤務不足しています。
勤務日数を維持したまま、2人の責任者だけで毎日の両区分を満たすことはできない、という判断です。別の日から勤務を移すだけでは、合計10勤務は増えません。
責任者を担当できる人を増やす、担当可能な応援者を確保する、変更可能な時間帯条件を見直すなど、人数や条件そのものの検討が必要です。色を消すためだけに、担当できない人へ○を付けないようにしましょう。
未入力・応援・複数役割・翌月コピーの確認点
未入力は、不在チェックとは別に解消します。 Fの9月7日は空欄です。試しにFへ責任者○を付けても、空欄のままなら9月7日の責任者数はAの1人から増えません。ただし、0がないことは全員分の入力完了を意味しないため、確定前には空欄も確認してください。
応援・臨時職員は、勤務表に行を追加します。 備考へ名前を書くだけでなく、職員名、役割、勤務記号を入力します。そのうえで、4本の集計式が新しい行まで参照しているか確認します。同じ人を重複登録して二重に数えないことも重要です。
複数の役割は、人数を足し合わせないようにします。 Aは責任者にも有資格者にも1人として入りますが、実人数は1人です。また、両方の資格・役割を持つことと、同時に二つの担当を担えることは別です。別々の担当者が必要なら、今回の人数チェックに加えて割当の確認が残ります。
翌月へコピーしたら、月末まで式を延ばします。 日付と曜日、最終職員の行、役割表の参照先、条件付き書式の適用範囲を見直してください。異動や担当変更も反映し、土日など特定の曜日に不在が偏っていないか確認します。
役割条件が増えたら、配置案の作成方法を見直す
毎月のシフト管理で、責任者・有資格者・時間帯の条件が増えると、不在を直すたびに別の日も確認する作業が続きます。その場合は、チェックに使っている役割条件を、配置案を作る段階から扱う方法も検討できます。
シフトラでは、スキル・担当ごとの必要人数と、その役割を担当できる従業員を設定し、希望収集と必要人数の確認を経てAIがシフト案を作成します。作成された案は確認してから確定します(製品情報は2026-09-05時点の機能一覧に基づく)。(シフトラ)
ただし、人手そのものの不足が自動で解消されるわけではありません。責任者として誰を登録するか、必要人数をどう設定するか、どの条件を変更できるかは職場側で決め、作成された案を確認して確定します。
まずは既存の表へ役割列と4本の集計行を加え、日別の0を修正したあとに、早番・遅番にも0が残っていないかを確かめましょう。