ホームブログ
AI活用

AIのシフト表が条件を守らないときの確認方法|希望休・重複・不足人数

表はきれいにできたのに、よく見ると希望休の日に名前がある。「もう一度確認して」と頼んでも、今度は別の日の人数が足りない。そんなときは、指示を長くする前に、間違いを三つに分けて確認すると直す場所が見えてきます。希望休、同じ人の重複、必要人数を、Excelで一つずつ確かめる手順です。

読み終えたらできること

  • 故意に誤りを入れた表で確認を練習する
  • 数式の結果が合わない原因を切り分ける
  • 直した案を確定してよいか判断する
コピーできる例から試す ↓読了目安:約11分・操作時間は別

掲載例は説明用の架空データです。実際のChatGPTの出力や店舗の実績ではありません。

目次から読みたいところへ
  1. AIの自己点検と、元データによる点検を分ける
  2. 最初に分けたい三つの原因
  3. わざと誤りを入れた配置表を貼り付ける
  4. 希望休との一致をCOUNTIFSで調べる
  5. 同じ人・同じ日の行数を数える
  6. 数式を入れたのに結果が合わないとき
  7. 必要人数は、重複を解消してから比較する
  8. 同じ日に二行あっても、時間が重ならない場合がある
  9. 希望休だけでなく「その時間に働けるか」も確認する
  10. 不具合の場所を指定して修正を依頼する
  11. 修正が終わったかを、同じ順番で判定する
  12. 確認済みの印を、次の担当者が信じられる形にする
  13. 時間帯別の不足は別に確認する

AIの自己点検と、元データによる点検を分ける

「条件を守った」と返ってきても、元の希望表との照合は別の作業です。希望休違反、同じ人の重複、人数不足をそれぞれ判定します。人数が多い日だけ見ても、同じ人が二重に数えられていれば安心できません。

ここでは日中の一枠10:00〜14:00に限定し、Excelで再現できる小さな練習を用意します。時間が重なる複数枠、日をまたぐ勤務、休憩、資格配置、法令や契約条件を完全に検証する表ではありません。

最初に分けたい三つの原因

希望休への配置を見つけても、原因がいつも生成の誤りとは限りません。元の希望表が更新されていなかった、入力した日付の形式が違った、そもそも必要人数を満たせる人がいなかった、という場合もあります。原因を分けずに再作成を繰り返すと、正しい条件まで少しずつ変わってしまいます。

まず、本人から届いた希望とAIへ渡した表が一致しているかを見ます。次に、AIへ渡した表と出力が一致しているかを見ます。前者が違えば入力の修正、後者が違えば案の修正です。入力も出力も条件どおりなのに人数が足りなければ、条件自体を店長が調整する必要があります。

例として「S002は6日不可」が元メッセージにだけ残り、入力表では可になっていたら、案だけ直しても次回また起きます。逆に入力表で不可と書いてあるのに配置されていれば、その組を具体的に指摘できます。確認を始める前に、元の希望、入力した版、返ってきた案の三つをそろえておきましょう。

わざと誤りを入れた配置表を貼り付ける

新しいシートを「配置」とし、A1へ次のタブ区切りを貼り付けます。日付は照合用の文字列としてそろえるため、A列を先に文字列書式へ設定してください。B列も文字列にします。列が分かれなければ、区切り文字をタブとして読み込みます。

これはAIの実出力ではなく、異常を検出できるか試すための人工的なデータです。2行目と3行目は同じ勤務の重複、4行目は希望休への配置、5行目の日は必要人数に1人足りません。

記入例・数式
日付	スタッフID	開始	終了
2026-10-05	S001	10:00	14:00
2026-10-05	S001	10:00	14:00
2026-10-06	S002	10:00	14:00
2026-10-07	S003	10:00	14:00

希望休との一致をCOUNTIFSで調べる

別シート「希望休」を作り、A1に日付、B1にスタッフID、A2に2026-10-06、B2にS002を入れます。こちらのA・B列も文字列書式にそろえます。配置シートのE1を「希望休と一致」とし、E2に次の式を入れてE5までコピーしてください。

この式は同じ日付とIDの組が希望休表にあるかを数えます。E4が1、他は0が期待値です。「0」は希望休一覧との一致がないという意味だけで、勤務可や全条件合格を証明しません。未回答や勤務可能時間は別の表と照合します。

記入例・数式
=COUNTIFS('希望休'!$A$2:$A$100,A2,'希望休'!$B$2:$B$100,B2)

この節の参照資料:MicrosoftCOUNTIFS 関数

同じ人・同じ日の行数を数える

配置シートのF1を「同日同IDの行数」とし、F2に次の式を入れ、F5までコピーします。F2とF3は2、F4とF5は1になります。この練習では一人一日一行なので2以上を要確認にします。

分割勤務を許す店では、同じ日の二行だけで誤りとは決まりません。その場合は開始・終了時刻の重なりを確認する別の判定が必要です。正しい分割勤務まで削除しないでください。

記入例・数式
=COUNTIFS($A$2:$A$100,A2,$B$2:$B$100,B2)

この節の参照資料:MicrosoftCOUNTIFS 関数

数式を入れたのに結果が合わないとき

練習データと同じなのに結果が全部0になる場合は、まず一致条件に使ったセルを見ます。画面では同じ「10月6日」でも、片方は日付の値、片方は文字列になっていることがあります。この練習で日付を文字列にそろえているのは、日付計算よりも、同じ表記の組を見つけることに集中するためです。

次に、IDの前後に空白がないかを確認します。「S002」と「S002 」は見た目では気づきにくく、全角・半角の違いも紛れます。まず問題の二つのセルを別の空白シートへコピーして比較し、原因を確かめてから整えます。元の表を残さず一括で置換すると、本来別のコードまで同じものにしてしまうおそれがあります。

100行を超える表で使うなら、式の参照範囲も確認してください。記事の式は2〜100行目までの練習用です。101行目以降を追加しても、式は自動でその行を数えるとは限りません。データの最後の行に、確実に検出される組を一つ置いて結果を見ると、範囲漏れに気づけます。確認後は試験用の行を取り除きます。

必要人数は、重複を解消してから比較する

「人数」シートのA1:C1を日付・必要人数・配置行数にします。A2:A4は2026-10-05、2026-10-06、2026-10-07を文字列で入力し、B2:B4はすべて2です。C2に次の式を入れてC4までコピーします。

最初の結果は2・1・1ですが、5日の2行は同じ人です。重複する配置の一行を解消し、希望休違反の配置を外してから再集計すると1・0・1になります。必要人数との差は1・2・1です。行数を人数として扱えるのは一人一日一行を確認した後だけです。

記入例・数式
=COUNTIFS('配置'!$A$2:$A$100,A2)

必要人数は、重複を解消してから比較する
日付修正前の行数有効な配置人数不足
10月5日2(同一人物が重複)11
10月6日1(希望休と一致)02
10月7日111

この節の参照資料:MicrosoftCOUNTIFS 関数

同じ日に二行あっても、時間が重ならない場合がある

ここまでの練習は一人一日一枠です。実際の店では、10〜13時と16〜19時のように、同じ人が二回入ることもあります。この場合、日付とIDの数が2でも、それだけで二重配置とはいえません。午前と夕方の勤務を誤って一行消さないよう、勤務の単位を先に決めます。

時間の重なりは、二つの区間のうち遅い方の開始時刻が、早い方の終了時刻より前かどうかで考えられます。10〜14時と13〜17時なら13〜14時が重なります。10〜14時と14〜18時なら、端の時刻は接しますが勤務時間は重なりません。引き継ぎに余裕が必要かどうかは、重複の判定とは別の店の条件です。

日をまたぐ勤務はさらに注意が必要です。「22:00〜02:00」を同じ日付の時刻だけで比較すると、終了が開始より前に見えます。開始日と終了日を持つ日時の表で確認するか、日中勤務だけの表と分けてください。この入門用COUNTIFSをそのまま夜勤の安全確認に使わず、扱える範囲を明確にしておきます。

希望休だけでなく「その時間に働けるか」も確認する

希望休一覧に名前がなければ、いつでも働けるわけではありません。学生スタッフが18時以降なら働ける日には、日付単位のチェックは通っても、16時からの配置は希望に合いません。開始と終了の両方が、確認済みの勤務可能な時間帯に入っているかを見ます。

たとえば勤務可能時間が18〜21時、配置案が18〜20時なら範囲内です。17〜20時なら開始が早すぎ、19〜22時なら終了が遅すぎます。いずれも一時間だけの違いですが、本人から見れば出勤できない案です。「ほぼ合っている」と処理せず、確認が必要な箇所として残してください。

未回答は希望休一覧にも載っていないため、この式だけでは見つかりません。勤務可の情報が確認できない人は、配置済みの表からIDと日付を拾って別に一覧にします。「不可ではない」と「可を確認した」の間を埋めるのは、本人への確認です。ここを明確にしておくと、完成後の差し戻しを減らせます。

不具合の場所を指定して修正を依頼する

再生成でほかの日が変わるのを避けるため、元の案、違反箇所、変更を許す範囲を渡します。代替候補の可否データがない場合は、不足を残したまま確認事項を返させます。

修正後は同じ検査をもう一度行います。一度違反が消えた後も、別の日や人に違反が移っていないかを確認します。

記入例・数式
元の配置案と条件表を参照してください。
検出事項:2026-10-05のS001が二重、10-06のS002は希望休。
変更可能範囲:10月5日〜7日の未確定枠のみ。
確定済みの別日は変更しない。勤務可と確認できない人は追加しない。
出力:修正前・修正後・変更理由・未解消の不足。
条件を満たせる候補が不明なら、必要な確認事項を返してください。

修正が終わったかを、同じ順番で判定する

誤りを一つ見つけると、ついその場で表を書き換えたくなります。けれども、複数の誤りがあると、何を直して何が残ったのか分からなくなります。まず「日付・ID・誤りの種類・状態」をメモし、修正前の版を残します。担当を交代するときも、そのメモがあれば同じ確認を最初からやり直さずに済みます。

再確認の順番は、入力の版、希望との一致、同じ人の重複、人数の順に固定すると追いやすくなります。違反した配置を外せば、その日は人数不足になります。最初に人数だけ合格にしても、希望を直した後に結果は変わります。最後に人数へ戻るのは、そのためです。

「エラー0件」の表示だけで終了にせず、何を検査したかを一緒に残します。この練習なら希望休の一致と一人一日一行の確認、日別人数です。担当業務、休憩、契約条件など、まだ確認していないものも書いておきます。別の人が表を見たときに、どこまで終わっているか分かることが、確認作業の仕上げです。

確認済みの印を、次の担当者が信じられる形にする

「確認済み」と書くときは、誰が何を見たかを一言添えます。希望休は店長が元の希望と比較、人数は副店長が修正後の表で集計、といった書き方です。確認者を増やすこと自体が目的ではありません。同じ箇所だけを二人で見て、別の条件が手つかずになるのを避けるためです。

一人で担当している場合も、作成と確認を分けると見方が変わります。配置を決めた直後には、選んだ理由ばかりに目が向きがちです。表を日付順に見た後でスタッフ別に並べてみるなど、向きを変えて点検します。並べ替えるときは表全体を対象にし、名前と時間が離れないよう原本を残して作業してください。

この練習の結果を書き残すなら、「重複1件、希望休違反1件を除いた後、5日1人・6日2人・7日1人不足」となります。「エラーを削除して完了」ではなく、その後に残った不足も記録します。代替の入力が済んだら、同じ検査を再実行して結果を更新します。

最後に、実際の配布版が確認した版と同じかを見ます。確認後に別の担当者が一枠変更していれば、以前の合格結果はそのまま使えません。確定後の変更には再確認する範囲を決め、日付と版番号を更新します。チェック式そのものよりも、どの版に対する結果かが分かることが、運用では大切です。

時間帯別の不足は別に確認する

この練習は日別の一枠しか扱いません。営業時間が長い店では「今日3人出勤」でも、閉店前に1人だけになる場合があります。開始・終了、休憩、担当業務を分けて点検します。

ShiftEngineの人数確認用ツールやExcel運用の解説を使い、確認対象に合う方法を選びます。表の検査ができることと、AIが自動で最適な配置を作れることは別です。

参考資料・記事について

公式資料の機能説明・制度案内を参照し、店舗向けの手順と記入例は当サイトで作成しています。想定例・試算は実在する店舗の実績ではありません。

よくある質問

式が0なら、希望をすべて守っていますか?

いいえ。指定した希望休一覧に一致しないだけです。勤務不可時間、未回答、契約条件などは別に確認します。日付の形式が違うと一致を見逃すので形式もそろえます。

同じ人が一日に二行あると必ず間違いですか?

一人一日一枠の練習では要確認です。分割勤務がある場合は、同日の行数ではなく時間の重なりと勤務条件を確認します。

無料Excel診断

現在のExcelを見ながら、改善できる工程を確認する。

希望回収、未提出確認、転記、Excel出力のどの工程を省力化できるかを無料で診断します。