シフト作成を生成AIで自動化するマニュアル(生成AI/ChatGPT)

ITリテラシー

従業員の希望シフトと1日あたりの必要人数をもとに、ChatGPTで最適化されたシフト表を生成する手順書です。

1 概要とワークフロー

📋 このマニュアルについて

このマニュアルは、シフト管理をChatGPTで効率化する方法を、誰でも実行できるように手順をまとめたものです。

所要時間:約15-30分
対応形:CSV UTF-8, Excel
対象:店舗管理者などシフト作成業務担当者の活用を想定

2 事前準備

Step 2.1: データの確認と整理

  • ChatGPT5(無料プランでは利用制限あり)
  • 従業員の希望シフトをExcelまたはGoogle Spread Sheetsにまとめる
  • 個人情報が含まれていないことを確認

Step 2.2: サンプルデータ構造の確認

希望シフト

従業員名7月1日7月2日7月3日
小田早番,日中早番遅番
中山早番早番,遅番遅番
佐藤日中遅番日中
鈴木早番,日中,遅番早番,日中
田中早番,遅番日中早番

必要人数

日付必要人数
7月1日2
7月2日2
7月3日2

※注意

人数・日数はサンプルのため最小限に抑えています。

本来は、シフト作成に必要なデータをすべて用意してください。

https://docs.google.com/spreadsheets/d/1JuUEGajlYKhBZ7b0EQbTxiYjU1nf000dQoKF2E8BWtk/edit?usp=drive_link (ダウンロードのうえご活用ください)

注意事項

  • 労働可能時間帯を早番・遅番などのシフトパターンで決めておくと、シフト作成を円滑化できます。
  • 文字化けを防ぐため、UTF-8エンコードで保存しましょう。
  • ファイルサイズが20MBを超える場合は、データを分割するか不要な列を削除してください。

3 ChatGPTアクセス

Step 3.1: ChatGPTサイトへアクセス

ブラウザでhttps://chatgpt.comにアクセス

※本プロジェクトは無料版でもある程度実行できますが、往復数が多くなると制限がかかってしまうため、シフト管理表の生成に時間がかかります。そのため有料版の利用を推奨いたします。

Step 3.1: ChatGPT 5(Auto)モデルを選択

今回は、無料版でも使用できるChatGPT-5(Auto)モデルでシフト管理表を生成します。

4 データアップロード

Step 4.1: ファイルアップロード

  1. 「ファイルを選択」または「ファイルをドラッグ&ドロップ」でCSVファイルを選択
  2. ファイルがアップロードされることを確認
  3. ファイル名が表示されることを確認

※上記の状態になっていれば問題ありません。

Step 4.2: データ確認プロンプト入力

📝 使用プロンプト例

※下記の青マーカー部分のプロンプトをコピーアンドペーストでChatGPTにチャットで送ってください。

#役割

あなたはシフト管理のプロフェッショナルであり、効率的かつ公平なシフト作成ができます。スタッフの希望シフトと1日の必要人数に応じた最適なシフトを作成できます。

#指示

このファイルはシフト表を作成するために必要なデータです。

まず、データの構造と内容を確認して、以下の情報を教えてください

1. 全体の回答数

2. 含まれている列(項目)の一覧

3. データの形式と品質

4. 分析に適した状態かどうかの判定

5 シフト管理表の生成依頼

Step 5.1: ファイルの情報をもとにシフト管理表を生成する

📝 使用プロンプト例

※下記のプロンプトをコピーアンドペーストでChatGPTにチャットで送ってください。

なお、下記のプロンプト内にある[ 〇 ]は希望の時間帯や日時などに変更してください。
その他の部分は、そのままコピーアンドペーストで送っても問題ありません。

例1)- 早番(〇時-〇時)/日中(〇時-〇時)/遅番(〇時-〇時)に区分する
→ - 早番(8時-12時)/日中(12時-16時)/遅番(17時-21時)に区分する

例2)・〇月〇日から〇月〇日までの〇日間
 → ・7月1日から7月3日までの3日間

# 役割

あなたはシフト管理のプロフェッショナルであり、効率的かつ公平なシフト作成ができます。スタッフの希望シフトと1日の必要人数に応じた最適なシフトを作成してください。

# 指示

・先ほどのファイルのデータをもとに、各日付の各時間帯で必要人数を満たす最適なシフト表を生成してください。

・「表をコピーする」でコピーアンドペーストできる形式で生成してください。

# 制約条件

- 早番(〇時-〇時)/日中(〇時-〇時)/遅番(〇時-〇時)に区分する

- 早番・日中・遅番すべてで必要人数を満たすこと

- 早番・日中・遅番すべてで必要人数を超える人員は入れないこと

- 希望シフトの「早番,日中,遅番」は、いずれも入れるものとすること

- 希望シフトの「早番,日中,遅番」は、連続して入ることも可能とすること

- 各スタッフの労働時間が日〇時間を超えないようにする 

- 各スタッフの連続勤務は〇日以内に収めること 

- スタッフの希望条件は可能な限り入れること

- スタッフが「休み」や「空欄」で提出している日はシフトを入れないこと

- スタッフが提出している時間帯はシフトを入れないこと

- 特定のスタッフにシフトが偏らないよう調整すること

- シフト表は表形式で作成し、一目で把握できるようにすること

# 出力の指示

【シフト表】

・〇月〇日から〇月〇日までの〇日間

・縦(スタッフ名)×横(日付)の一覧表

・各スタッフが早番・日中・遅番のどのシフトに入るか、ひと目でわかるものにする

# 変数の定義(こちらについては各User自分の環境にあわせた情報を入力)

- 早番(8時-12時)/

- 日中(12時-16時)

- 遅番(17時-20時)

- 各スタッフの労働時間が日8時間を超えないようにする

- 各スタッフの連続勤務は5日以内に収めること

- 7月1日から7月3日までの3日間

📝 実際に使用したプロンプト例

#役割

あなたはシフト管理のプロフェッショナルであり、効率的かつ公平なシフト作成ができます。スタッフの希望シフトと1日の必要人数に応じた最適なシフトを作成してください。

# 指示

・先ほどのファイルのデータをもとに、各日付の各時間帯で必要人数を満たす最適なシフト表を生成してください。

・「表をコピーする」でコピーアンドペーストできる形式で生成してください。

# 制約条件

- 早番(8時-12時)/日中(12時-16時)/遅番(17時-21時)に区分する

- 早番・日中・遅番すべてで必要人数を満たすこと

- 早番・日中・遅番すべてで必要人数を超える人員は入れないこと

- 希望シフトの「早番,日中,遅番」は、いずれも入れるものとすること

- 希望シフトの「早番,日中,遅番」は、連続して入ることも可能とすること

- 各スタッフの労働時間が日8時間を超えないようにする 

- 各スタッフの連続勤務は5日以内に収めること 

- スタッフの希望条件は可能な限り入れること

- スタッフが「休み」や「空欄」で提出している日はシフトを入れないこと

- スタッフが提出している時間帯はシフトを入れないこと

- 特定のスタッフにシフトが偏らないよう調整すること

- シフト表は表形式で作成し、一目で把握できるようにすること

# 出力の指示

【シフト表】

・7月1日から7月3日までの3日間

・縦(スタッフ名)×横(日付)の一覧表

・各スタッフが早番・日中・遅番のどのシフトに入るか、ひと目でわかるものにする

# 変数の定義(こちらについては各User自分の環境にあわせた情報を入力)

- 早番(8時-12時)/

- 日中(12時-16時)

- 遅番(17時-20時)

- 各スタッフの労働時間が日8時間を超えないようにする

- 各スタッフの連続勤務は5日以内に収めること

- 7月1日から7月3日までの3日間

📋 期待される応答例

2025-07-012025-07-022025-07-03
小田早番早番遅番
中山早番早番+遅番遅番
佐藤日中遅番日中
鈴木日中+遅番早番+日中
田中遅番日中早番

Step 5.2: Excelに生成したデータを貼り付ける

生成したシフトデータをExcel、もしくはGoogle Spread Sheetsにコピーアンドペーストします。

  1. ChatGPTが生成した表をコピーする
  2. Excel、もしくはGoogle Spread Sheetsにペーストする

シフト管理生成結果サンプル

集計情報をまとめたい場合のStep : 集計情報を生成する

📝 使用プロンプト例

シフト管理表を生成した後に、集計情報をまとめたい場合は、下記の青マーカー部分のプロンプトをChatGPTにコピーアンドペーストで送ってください。

#役割
あなたはシフト管理のプロフェッショナルであり、効率的かつ公平なシフト作成ができます。スタッフの希望シフトと1日の必要人数に応じた最適なシフトを作成してください。

# 指示
先ほどのデータをもとに、シフトの集計情報をまとめてください。

 【集計情報】
・各スタッフの勤務日数と総労働時間
・人員が不足している時間帯(もしあれば)

📋 期待される応答例

スタッフ勤務集計

スタッフ名勤務日数総労働時間
小田312
中山316
佐藤312
鈴木216
田中312

【集計情報】をまとめました。


各スタッフの勤務日数と総労働時間

(1スロット=4時間で計算)

スタッフ名勤務日数総労働時間
小田3日12時間
中山3日16時間
佐藤3日12時間
鈴木2日16時間
田中3日12時間

人員が不足している時間帯

  • 2025-07-02(日中)
    必要人数 2名に対して、割当人数 1名 → 1名不足

✅ 結果として、ほとんどの時間帯は必要人数を満たしていますが、7月2日の日中だけ不足が発生しています。
この不足を解消するには、他のスタッフに日中シフト追加を依頼するか、必要人数の見直しが必要です。

6 よくある質問の解決方法

Q1.プロンプトに希望がうまく載らない

A.行ごとの格式の統一をして、再度ChatGPTに投げてください。

Q2.ChatGPTの返答が長すぎる 

日付を切って回数を分けるよう指示すると、返答スピード・シフト生成の質を高められます。
例)下記の3段階に日付を分けて、最適なシフトを生成してください。

・7月1日から7月10日
・7月11日から7月20日
・7月21日から7月31日

Q3.予定が偏る

希望の計算度をメモって作成解釈を付けて再投げてください。
またシフトデータの文言が統一されているか確認してください。
例)早朝や早番、中番や日中などのバラつきがないかチェック

Q4.生成したシフト表をコピーできない

下記のように「表をコピーする」を使用したい旨をChatGPTに投げてください。

例)「表をコピーする」でコピーアンドペーストしたいです。

7 まとめ

ChatGPTを活用すれば、希望シフトと必要人数から最適なシフト表を生成できます。

Excelで保存して利用継続すれば、シフト変更や傾向分析なども簡単に行えます。

既存データも再利用可能で、御社のフローに合わせたカスタマイズが可能です。

【ChatGPTでシフト管理生成するメリット】

  • シフト作成の手間を数時間節縮
  • シフト検討不備の削減、従業員満足度の向上
  • ChatGPTの利用でソフト費用を安価に実現

ChatGPTのアカウントは、企業ユーザーとして情報管理しておくと、情報漏えいの心配がなく、業務の属人化を防止できます。

不明な点がある場合は、情報システム部門または外部の専門家に相談して、シフト管理を効率化しましょう。

🖋 記事執筆担当

DX推進・ITリテラシー向上に関する記事や研修教材を企画・編集。自治体、大企業、教育機関向けの研修実績をもとに、現場で役立つ知見を発信している。複数の専門メンバーが共同で執筆・監修を行い、信頼性の高い情報提供を心がけています。

menter_logo

[法人向け]
文系DX人材育成なら『MENTER』

「うちの会社はITリテラシーが低い...」
「DXを行うには人材育成から始めなくては...」
「自動化やAI理解できる社員が増えたらな...」

デジタルに強い人材育成を行うオンライン学習サービス『MENTER』が、そんなお悩みを解決します!

・マンガで楽しくインターネットについて学習
・ショートカットキーからAIの設計まで
・大手企業の導入事例/成功事例あり
・DX人材育成について相談/事例集請求/無料トライアル/ITリテラシー無料診断可能

MENTER紹介ページを‍見る
お問い合わせは ‍こちら

ITスキルアップ相談室

コメント

タイトルとURLをコピーしました