介護事業所が各フロアから届く介護用品の発注の依頼を Power Automate と AI でまとめ、発注の一覧と在庫の不足を作る
各フロアの介護職員がフォームに書いた介護用品の依頼を、AIが品目マスタの品目・数量・単位に読み替えて依頼の明細にします。週2回の発注日には、依頼の合計と在庫を照らした発注の一覧と在庫の不足の一覧ができ、購買の担当は確かめて発注するだけになります。
- 生成AI
- Azure OpenAI Service/Claude
- 連携・自動化
- Make/n8n/Power Automate/Zapier
- 対象業界
- 介護/医療
- 対象部門
- 総務/購買
- 対象業務
- データ入力・転記/集計・分析
- 主な課題
- 入力作業が多い/期限・対応漏れが起きる/確認ミスが多い
- AIで行う処理
- 抽出
- 主な効果
- 入力漏れ削減/対応スピード向上/工数削減
- 導入難易度
- ★☆☆☆☆
- 実装レベル
- 半自動化
- 費用感
- ノーコード連携(中)
- 人間の確認
- 条件付き
01導入前 / 導入後の業務フロー
- フロアの職員が紙の依頼票に品名と数を書き、事務所の箱に入れる。急ぎのときは内線かTeamsのチャットで伝える
- 購買の担当が依頼票とチャットを集め、表計算の依頼の一覧に1行ずつ書き写す
- 品名から品目と規格を特定する。分からないものはフロアへ内線で聞き返す
- 「枚」「袋」「ケース」の単位をそろえ、発注の単位(ケース・箱)に直す
- 発注日の朝に倉庫の棚を見て回り、在庫の数を一覧に書き足す
- 依頼の合計と在庫と発注点を見比べ、仕入先ごとに発注の数を決める
- 仕入先のWebの発注画面に入力するか、FAXの発注書を書いて送る
- 倉庫から各フロアへ払い出し、払い出した数を一覧に書く
- 人フロアの職員がタブレットかPCで依頼のフォームを開き、フロア・依頼者・急ぎかを選んで、品名と数を自由に書いて送る
- 自動回答の送信をきっかけにフローが動き、回答の中身を取り出す
- 自動品目マスタのリストから、品目の呼び名の一覧を取り出してプロンプトに渡す
- 自動AIが依頼の文を1行ずつ品目マスタの品目・数量・単位・急ぎかに読み替え、決められないものに理由を付ける
- 自動依頼の明細のリストに1行ずつ登録する。要確認の行があれば購買の担当へメールで知らせる
- 人購買の担当が要確認の行だけを見て、品目を選び直すかフロアへ聞き返す
- 人発注日の朝、倉庫の在庫の数を在庫のリストに入れる
- 自動発注日の昼、未発注の依頼を品目ごとに合計し、在庫・未着・発注点と照らして、仕入先ごとの発注の一覧と在庫の不足の一覧を作る
- 人購買の担当が一覧を承認の画面で確かめ、数を直して承認する
- 人承認した一覧を見ながら、仕入先の発注画面かFAXで発注する
各工程の詳しい説明を読む
- フロアの職員が紙の依頼票に品名と数を書き、事務所の箱に入れる。急ぎのときは内線かTeamsのチャットで伝える
- 購買の担当が依頼票とチャットを集め、表計算の依頼の一覧に1行ずつ書き写す
- 品名から品目と規格を特定する。分からないものはフロアへ内線で聞き返す
- 「枚」「袋」「ケース」の単位をそろえ、発注の単位(ケース・箱)に直す
- 発注日の朝に倉庫の棚を見て回り、在庫の数を一覧に書き足す
- 依頼の合計と在庫と発注点を見比べ、仕入先ごとに発注の数を決める
- 仕入先のWebの発注画面に入力するか、FAXの発注書を書いて送る
- 倉庫から各フロアへ払い出し、払い出した数を一覧に書く
(a)言い方の読み替えに時間がかかる。 3番目と4番目が、この業務でいちばん手のかかるところです。「パッド夜」が夜用の尿取りパッドのどれか、「手袋M2」が2箱か2袋か。依頼票を書いた職員は夜勤明けで帰っていることが多く、聞き返しは翌日になります。
(b)依頼がばらばらの経路で届く。 紙の依頼票、内線、チャットの3つで、チャットの依頼は書き写し忘れが起きやすい経路です。内線で受けた依頼はメモが残らず、後で「頼んだのに届いていない」と言われても確かめる先がありません。
(c)在庫の不足が発注日の朝に分かる。 5番目で棚を見て初めて、依頼が重なった品が足りないと分かります。その時点で締めまでの時間が数時間しかなく、数の見直しやフロア間の融通の相談が間に合いません。
(d)発注の一覧づくりが記憶頼り。 仕入先や入り数は担当者が覚えており、1人が休むと発注の数の決め方が変わります。
- 【人】 フロアの職員がタブレットかPCで依頼のフォームを開き、フロア・依頼者・急ぎかを選んで、品名と数を自由に書いて送る
- 【自動】 回答の送信をきっかけにフローが動き、回答の中身を取り出す
- 【自動】 品目マスタのリストから、品目の呼び名の一覧を取り出してプロンプトに渡す
- 【自動】 AIが依頼の文を1行ずつ品目マスタの品目・数量・単位・急ぎかに読み替え、決められないものに理由を付ける
- 【自動】 依頼の明細のリストに1行ずつ登録する。要確認の行があれば購買の担当へメールで知らせる
- 【人】 購買の担当が要確認の行だけを見て、品目を選び直すかフロアへ聞き返す
- 【人】 発注日の朝、倉庫の在庫の数を在庫のリストに入れる
- 【自動】 発注日の昼、未発注の依頼を品目ごとに合計し、在庫・未着・発注点と照らして、仕入先ごとの発注の一覧と在庫の不足の一覧を作る
- 【人】 購買の担当が一覧を承認の画面で確かめ、数を直して承認する
- 【人】 承認した一覧を見ながら、仕入先の発注画面かFAXで発注する
6番目が、この設計の分かれ目です。 購買の担当が見るのは、AIが要確認とした行だけです。品目マスタの呼び名に当てはまった行は、そのまま依頼の明細に入ります。 全部の行を開き直す設計にすると、20.0時間はあまり減りません。
8番目でAIを使っていないのも、意図してのことです。 合計と引き算は式で行い、AIが数を決める場面を作りません。 発注の数を間違えると、そのまま倉庫の棚に積まれるか、欠品になるからです。
02今回想定するシステム構成
フロアの職員(タブレット・PC) │ 依頼のフォームに品名と数を自由に書く ▼【トリガー】フォームの回答の送信 Power Automate(自動化したクラウドフロー①) ├──▶ 回答の中身を取り出す ├──▶ SharePoint:品目マスタから呼び名の一覧を取る ▼ AI Builder のプロンプト(Run a prompt、JSON 出力) │ 依頼の文を、品目コード・数量・単位・急ぎかの行に読み替える ▼ Power Automate ── 依頼の明細へ1行ずつ登録/要確認はメールで知らせる ▼【トリガー】発注日(月・木)の昼 Power Automate(スケジュール済みクラウドフロー②) │ 依頼の合計・在庫・未着・発注点を式で照らす ▼ 発注の一覧(仕入先ごと)と在庫の不足の一覧 ▼ 【購買の担当が承認の画面で確かめて承認】 ▼ 仕入先の発注画面・FAXで発注(人が行う)
| 役割 | 想定する製品 | 代替候補 |
|---|---|---|
| ワークフロー | Power Automate(自動化したクラウドフローとスケジュール済みクラウドフロー) | Make、n8n、Zapier |
| 生成AI | AI Builder のプロンプト(Run a prompt、JSON 出力) | Azure OpenAI(Microsoft Foundry)、Claude |
| 連携 | SharePoint(品目マスタ、依頼の明細、在庫、発注の一覧のリスト) | Microsoft Lists |
| 入力 | Microsoft Forms(依頼のフォーム) | SharePoint のリストのフォーム |
| 承認 | Approvals(Start and wait for an approval) | Outlook のメールでの確認 |
新しく足すのは、フォームとリストとフローだけです。 品目と仕入先の一覧は今の表計算のファイルから SharePoint のリストへ移し、品目ごとに「現場での呼び名」の列を足します。 この列が、AIが言い方を読み替えるときの手がかりになります。
入力に Microsoft Forms を使うのは、フロアの職員にとって画面が単純だからです。 コネクタの「When a new response is submitted」は応答の ID(Response Id)を返し、「Get response details」でその回答の中身を取り出す二段の作りです。このコネクタは組織のアカウントでだけ動きます。 また、グループで作ったフォームは選択の一覧に出ないので、編集画面のアドレスにある Form Id を手で入れます。
AIは、Power Automate の「Run a prompt」アクションで呼びます。 2025年5月から、以前の「Create text with GPT using a prompt」がこの名前になっています。プロンプトの出力は JSON にでき、保存した時点の形がそのまま固定されるので、後段のフローで項目名がぶれません。
発注そのものは、この構成から行いません。 仕入先のWebの発注画面やFAXは今のまま人が使います。この構成が出すのは、承認済みの発注の一覧までです。
03どうやって実装するのか
処理の起点を決める
トリガーは2つあります。 1つ目は依頼のフォームの回答の送信、2つ目は発注日の決まった時刻です。
1つ目のフロー(依頼の受け付け)は、Forms の「When a new response is submitted」で動かします。 フロアの職員が送るたびに1回動き、その依頼だけを読み替えて依頼の明細に入れます。まとめて読み替えないのは、要確認をその日のうちに返したいからです。 夜勤明けの職員が帰る前に聞き返せれば、翌日まで待たずに済みます。
2つ目のフロー(発注の一覧づくり)は、スケジュール済みクラウドフローの Recurrence で動かします。 月曜と木曜の13時に動かし、その時点で「未発注」の依頼の明細をすべて集めます。 締めの時刻はフォームの説明文にも書き、13時を過ぎた依頼は次の発注日に回ることを職員に見えるようにします。
手動のボタンも用意します。 感染症の流行で手袋が急に要るときなど、発注日を待たずにフロー②を動かせるようにします。
入力データを集める
| データ | 中身 | 取得元 |
|---|---|---|
| 依頼の回答 | フロア、依頼者、急ぎか(通常/急ぎ)、依頼の文(自由記述)、送信の日時 | Microsoft Forms |
| 品目マスタ | 品目コード、正式な品名、規格(サイズ・昼夜)、払い出しの単位、発注の単位と入り数、仕入先、現場での呼び名、使用中止の印 | SharePoint のリスト |
| 依頼の明細 | 依頼の ID、行番号、品目コード、数量、単位、急ぎか、状態(未発注/要確認/発注済み)、AIが読んだ元の文 | SharePoint のリスト(フロー①が書く) |
| 在庫 | 品目コード、倉庫の在庫の数、数えた日時、発注点、発注済みで未着の数 | SharePoint のリスト(発注日の朝に人が入れる) |
質を決めるのは、品目マスタの「現場での呼び名」の列です。 「テープL、アテントL、大人用おむつL、テープ止めL」のように、その品目を職員がどう呼ぶかを読点で並べておきます。 AIはこの列を見て読み替えるので、ここに無い呼び方は要確認になります。
依頼の文は、品名と数だけを書いてもらいます。 フォームの説明文に「利用者さんの名前は書かないでください」と入れます。個別の利用者のための品(特定の方だけが使うサイズなど)は、品目マスタに「個別対応」の品目として持ち、名前ではなく品目で頼んでもらいます。
急ぎかどうかは選択肢で取ります。 「なるべく早く」の解釈がぶれるので、AIの判定から外します。
データの取得方法を決める
フロー①は次の順で動きます。
- When a new response is submitted … Form Id を指定する。返るのは Response Id
- Get response details … Form Id と Response Id で回答の中身を取る
- Get items(SharePoint) … 品目マスタのリストから、使用中止でない品目を取る。Filter Query に
Discontinued eq 0を入れ、Limit Columns by View で品目コード・品名・規格・単位・呼び名の列だけのビューを指定する - Select … 取った品目を「品目コード|品名|規格|払い出しの単位|呼び名」の1行ずつの文字列にして、改行でつなぐ
- Run a prompt … 依頼の文と、4番目の品目の一覧を入力に渡す
- Apply to each … 返った
linesの配列を1行ずつ回し、Create item で依頼の明細に登録する
3番目で列を絞るのは、渡す文字を抑えるためです。 仕入先や単価の列は読み替えに要らず、渡すほど読み違いの材料が増えます。コネクタの説明でも、ビューで列を絞ると列のしきい値の問題を避けられるとされています。
品目マスタは毎回丸ごと渡します。 120品目なら数千字に収まり、候補を先に絞る仕組みを入れると、そこで正しい品目が落ちることがあるからです。
フロー②は次の順です。
- Get items … 依頼の明細から
Status eq '未発注'の行を取る - Get items … 在庫のリストと品目マスタを取る
- Apply to each(品目) … 品目ごとに Filter array で依頼の明細の行を絞り、数量を変数に足していく
- Compose … 品目ごとに「依頼の合計」「在庫」「未着」「発注点」から発注の数を式で出す
- Create item … 発注の一覧のリストに、仕入先・品目・発注の数・在庫の不足の印を書く
AIへ渡す前に整形する
- 空の回答を外す … 依頼の文が空か、数文字しか無い回答は、AIに渡さずに要確認にします
- 全角・半角をそろえる … 数字とアルファベットを半角に、「m」「M」のゆれを「M」にします。サイズの読み違いの多くは、ここで消えます
- 改行と区切りをそろえる … 「、」「・」「/」で1行に並べた依頼も、改行で並べた依頼も、そのまま渡します。区切りの判断はAIに任せます
- 品目の一覧を作る … 使用中止の品目を外し、1品目1行の文字列にします
- 同じ依頼の二度送りを見つける … 同じフロア・同じ依頼者・同じ依頼の文が10分以内に2回来たら、2回目を「重複の疑い」にします
4番目で使用中止の品目を外すのが大事です。 メーカーが変わっても職員は前の呼び方を続けるので、前の品目が残っていると、取り扱いのない品が発注の一覧に出ます。 前の呼び名は新しい品目の列へ移します。
AIに処理させる
させるのは、依頼の文を1品目ずつに分けて、品目マスタのどれに当たるか・いくつか・何の単位かを書き出すことだけです。
| 取り出すもの | 取り出し方 | 決められないときの扱い |
|---|---|---|
| 品目 | 品目マスタの品名・規格・呼び名と照らして品目コードを選ぶ | 候補が2つ以上なら ambiguous、無ければ not_found |
| 数量 | 書かれた数字をそのまま | 数字が無ければ quantity を空にして no_quantity |
| 単位 | 「枚」「袋」「箱」「ケース」など書かれた単位 | 書かれていなければ空にして no_unit |
| サイズ・昼夜 | 規格の違う品目を分けるために読む | 書かれておらず品目が決まらなければ ambiguous |
| 元の文 | その行の根拠にした依頼の文の部分 | そのまま写す |
表の右端の列が、この構成の安全装置です。 決められないときに、近い品目を選ぶのではなく、決められない理由を付けて返させます。 理由が付いた行は要確認になり、購買の担当が見ます。
| させないこと | 理由 |
|---|---|
| 発注の数の計算 | 合計・在庫・発注点の照らし合わせは式で行う |
| 単位の換算 | 「2袋」を何ケースにするかは入り数の列で式が行う |
| 足りないサイズの推測 | 「テープ」とだけ書かれたものに、よく出るLを入れない |
| 代わりの品の提案 | 品目の切り替えは購買の担当と看護・介護の責任者が決める |
| 利用者の名前の書き出し | 依頼の明細に個人の情報を持ち込まない |
3行目がいちばん起きやすい失敗です。 「テープ 1ケース」とだけ書かれた依頼に、AIは「多くの施設ではLが一番使われる」と考えてLを選びます。それがMのフロアなら、1ケースのLが棚に残り、Mが欠品します。 だから、サイズが書かれていない依頼は推測させずに ambiguous にします。
指示内容を固定する
あなたは介護施設の購買の担当として、フロアの職員から届いた介護用品の依頼を、
施設の品目マスタの品目に読み替えます。
【入力】
- 依頼の文:{request_text}
- 品目の一覧(1行に1品目。品目コード|品名|規格|払い出しの単位|現場での呼び名):
{item_list}
【やること】
1. 依頼の文を、品目ごとの行に分けてください。
2. 行ごとに、品目の一覧から当てはまる品目コードを1つ選んでください。
品名・規格・現場での呼び名のどれかと一致するものを選びます。
3. 書かれている数量と単位を、そのまま写してください。
4. その行の根拠にした依頼の文の部分を source_text にそのまま写してください。
【status の選び方】
- ok ......... 品目が1つに決まり、数量と単位が書かれている
- ambiguous .. 当てはまる品目が2つ以上ある(サイズや昼用・夜用が書かれていない等)
- not_found .. 品目の一覧に当てはまるものが無い
- no_quantity 数量が書かれていない
- no_unit .... 単位が書かれていない
迷ったときに ok を選ばないでください。
【厳守事項】
- 書かれていないサイズ・規格を補わないでください。よく使われるサイズを選ばないでください。
- 数量の計算や単位の換算をしないでください。「2袋」は quantity=2、unit=袋 のまま返します。
- 「いつもの」「前と同じ」など、品目が書かれていない依頼は not_found にしてください。
- 品目の一覧に無い品を、似た品目に当てはめないでください。
- 代わりの品を提案しないでください。
- 人の名前が書かれていても、どの項目にも写さないでください。
source_text に名前が含まれる場合は、その部分を「(名前)」に置き換えてください。
- 介護用品でない依頼(設備の修理、食材など)は、item_code を空にし、status を not_found、
note に「介護用品以外」と書いてください。
- 出力は指定した JSON だけにしてください。JSON の前後に説明やマークダウンを付けないでください。
「よく使われるサイズを選ばない」を、わざわざ書いています。 書かないと、AIは親切のつもりで空いている規格を埋めます。埋めた値が正しいかどうかではなく、「書かれていなかった」という事実が消えることが問題です。
名前を「(名前)」に置き換える指示は、フォームの説明文とあわせて二重に置いています。 職員は急いでいると「〇〇さんの分」と書きます。依頼の明細は施設の中で広く見られるリストなので、そこへ名前を持ち込まないための指示です。
入力に指示を入れないことにも注意します。 AI Builder の入力の説明には、入力に指示を含めることはできず、セキュリティの理由で禁じられていると書かれています。指示はプロンプトの本文に書き、フォームの依頼の文はあくまで読み替える材料として入力に渡します。
出力形式を固定する
次の形の JSON で受け取ります。 プロンプトの出力を JSON にし、例を入れて「Custom」の形で保存します。
{
"lines": [
{
"line_no": 1,
"item_code": "DP-TL-L",
"quantity": 1,
"unit": "ケース",
"status": "ok",
"source_text": "テープL 1ケース",
"note": ""
},
{
"line_no": 2,
"item_code": "",
"quantity": 2,
"unit": "袋",
"status": "ambiguous",
"source_text": "パッド2袋",
"note": "昼用・夜用とサイズが書かれていない"
}
],
"has_unresolved": true
}
1つ目の理由は、行ごとに状態を持てることです。 1件の依頼に5品目あって1品目だけが分からないとき、残りの4品目は依頼の明細へそのまま入り、1品目だけが要確認になります。 自由文で受けると、その切り分けを人が読み直すことになります。
2つ目は、後段の式で使える形にそろうことです。 単位は書かれたままで受け、換算はフロー②が入り数で行います。 AIに換算させると、間違いがどこで入ったかが分からなくなります。
JSON の形には制約があります。 プロンプトの JSON 出力は、キーの無い配列(["a", "b"] のような形)を定義できません。 上の例のように、配列の要素は必ずキーを持つオブジェクトにします。また、保存した時点の形が固定されるので、項目を足したらプロンプトを保存し直し、フローの側の参照も直します。
指示の最後の行は、「A JSON could not be generated」のエラーへの対処として公式の FAQ が案内している書き方です。
システムへ連携する
| つなぎ先 | 方式 | 内容 |
|---|---|---|
| Microsoft Forms | When a new response is submitted/Get response details | 依頼の回答を受け取る |
| SharePoint(品目マスタ) | Get items | 呼び名を含む品目の一覧を取る |
| AI Builder | Run a prompt | 依頼の文を品目の行に読み替える |
| SharePoint(依頼の明細) | Create item/Update item | 行ごとに登録し、発注したら状態を変える |
| SharePoint(在庫・発注の一覧) | Get items/Create item | 合計と在庫を照らした結果を書く |
| Approvals | Start and wait for an approval | 発注の一覧を購買の担当が確かめる |
| Office 365 Outlook | メールの送信 | 要確認の行と、承認済みの一覧を知らせる |
状態の列は、書く主体を分けます。 「未発注」「要確認」はフロー①、「発注済み」は承認のあとのフロー②が書き、要確認を「未発注」に戻すのは人だけです。
フロー②の発注の数の式は、次の形です。
発注の数(発注の単位) = 切り上げ((依頼の合計 + 発注点 − 在庫 − 未着)÷ 入り数)
0以下なら発注しません。 ここで在庫が依頼の合計より少ない品目には「在庫の不足」の印を付け、次の配達までの払い出しを減らすか、フロア間で融通するかを相談する一覧に載せます。
承認は Approvals のアクションで、購買の担当の2名を承認者にします。 発注の一覧と在庫の不足を載せ、数を直したいときは却下して一覧のリストを直し、もう一度承認に回します。
人が確認する
人が見る場面は3つです。
- 要確認の行(毎日) …
ambiguous・not_found・no_quantity・no_unitの行をメールで受け、品目を選び直すか、フロアへ聞き返します。聞き返しはその日のうちに。 依頼した職員がまだ勤務しているうちに確かめます - 在庫の数(発注日の朝) … 倉庫の棚を数えて在庫のリストに入れます。この数だけは、AIでも式でも代わりができません
- 発注の一覧の承認(発注日の昼) … 仕入先ごとの発注の数と、在庫の不足の一覧を見て承認します。特に、急ぎの依頼と在庫の不足が重なる品目を見ます
2番目を省かないでください。 在庫の数が古いと、式が正しくても発注の数は間違います。数えた日時が前回の発注日のままなら、フロー②は一覧を作らずに在庫の入力を促します。
目標は、240件をならして1件1.5分です。 要確認の行は全体の1〜2割、残りはそのまま入る想定です。要確認が3割を超える週は、品目マスタの呼び名の列が足りていません。
例外に対処する
| 起きること | 対応 |
|---|---|
| 品目マスタに無い品の依頼 | not_found で要確認へ。新しい品なら品目マスタに足すかを購買の担当が決める |
| サイズ・昼夜が書かれていない | ambiguous。依頼したフロアへ聞き返す |
| 数量が書かれていない | no_quantity。数を推測して入れない |
| 「いつもの」「前と同じ」 | not_found。前回の依頼を自動で写さない |
| 介護用品以外の依頼(修理・食材など) | note に「介護用品以外」。担当の部署へ回す |
| AIの応答がエラーかタイムアウト | フローを失敗にし、依頼の回答を「未処理」として残す。購買の担当が手で読み替える |
| JSON が生成できなかった | 同じく未処理として残す。プロンプトの指示を見直す |
| 同じ依頼が二度送られた | 「重複の疑い」にして、2回目を依頼の明細に入れない |
| 在庫のリストが更新されていない | フロー②が一覧を作らず、在庫の入力を促す |
| 臨時の大量の依頼(感染症の流行など) | 手動のボタンでフロー②を動かし、臨時の発注の一覧を作る |
上の4行が大半を占めます。 どれもAIの読み違いではなく、依頼の書き方と品目マスタの問題です。 多い理由から呼び名とフォームの説明文を直します。
AI Builder のプロンプトは利用量の上限や容量の制限を受けることがあるとされています。失敗しても回答が「未処理」で残るようにしておけば、取りこぼしは起きません。
記録を残す
- 依頼の回答の全文(フォームの側に残る)と、送信の日時・フロア・依頼者
- AIが返した JSON の全文と、そのとき渡した品目の一覧の版(品目マスタの最終更新日時)
- 依頼の明細の行ごとの状態の変化(未発注→要確認→未発注→発注済み)と、直した人
- 発注日ごとの発注の一覧と在庫の不足、承認した人と承認の日時
- 要確認の理由ごとの件数(月ごと)
2つ目で品目の一覧の版を残すのは、品目マスタが後から変わるためです。 呼び名を足したり品目を使用中止にしたりすると、同じ依頼の読み替えの結果が変わります。当時の一覧が分からないと、読み違いがAIのせいか、マスタのせいかを見分けられません。
最後の行が、運用を直す材料になります。 「サイズが書かれていない」が多いフロアにはフォームの説明文を見せ直し、「品目の一覧に無い」が多い品は呼び名の列に足します。
04実装レベルの3段階
最小構成は、確かめるための段階です。 月240件はさばけません。 半自動化で、1件5分が1.5分になる想定で、これが本記事の想定です。 依頼の書き写しと品目の特定と振り分けが自動になり、残るのは要確認の行と発注の一覧の確認です。 在庫の数は発注日の朝に人が数えて入れます。 本格構成は、払い出しの記録の運用と仕入先との取り決めしだいです。 半自動化を数か月回してから考えれば足ります。
05工数削減シミュレーション
導入後 240件 × 1.5分 ÷ 60 = 6 時間/月
自社条件で導入効果を整理したい方へ
このユースケースを自社に当てはめた場合の前提値と削減見込みを、業務ヒアリングをもとに整理します。
06向いている企業・向いていない企業
- 特別養護老人ホーム、介護老人保健施設、有料老人ホーム、病院の病棟など、フロアやユニットごとに介護用品を倉庫から払い出し、事務の購買の担当がまとめて仕入先へ発注している事業所。依頼が紙の依頼票・内線・チャットでばらばらに届き、品名の言い方が職員ごとに違うため、依頼を発注の品目に読み替える作業と在庫の数え合わせに毎週半日以上かかっている場合。Microsoft 365(Forms、SharePoint、Outlook)と Power Automate を使っている場合。
- 仕入先の発注システムに各フロアが直接入力でき、依頼と発注が一つの仕組みで済んでいる場合。品目が十数種類で、依頼票の選択肢だけで足りる場合。介護用品を利用者ごとに個別に購入・請求しており、品目より利用者の名前で管理する必要がある場合(利用者の情報を扱う別の設計になる)。なお、どの仕入先から買うか、在庫をどこまで持つか、高い品への切り替えを認めるかという判断は、この構成では代替できません。
07最小構成で試す方法
- 先月の依頼票とチャットの依頼から30件を選ぶ(うち数件は、聞き返しが要った依頼を入れる)
- 品目マスタを、品目コード・品名・規格・呼び名の4列の表にする
- Microsoft 365 の Copilot など、手元で使えるAIの画面に品目の表を貼り、依頼の文を1件ずつ貼る
- 「この依頼を品目ごとに分け、表の品目コード・数量・単位を書き出してください。サイズや規格が書かれていなければ推測せず『決められない』と書いてください。数の計算や単位の換算はしないでください」と指示する
- 出てきた結果を、当時の担当者が実際に発注した品目と突き合わせる
30件は必ずやってください。 フォームやフローを作る前に、「呼び名の列があれば読み替えられるのか」を確かめます。
| 出てきた内容 | 判断 |
|---|---|
| 当時の発注と同じ品目に読み替えられた | フォームとフローの作成に進む |
| 書かれていないサイズを補った | 指示の書き方で直る。構成は有効 |
| 「決められない」が多すぎる | 呼び名の列が足りない。 品目マスタを先に整える |
3行目が出ることは珍しくありません。 失敗ではなく、聞き返しに時間がかかっていた理由が、品目マスタの呼び名の不足だったと分かったということです。 担当者が頭の中で読み替えていた呼び名を、列に書き出すところから始めてください。
08実装時につまずきやすいポイント
| 問題 | 対策 |
|---|---|
| 書かれていないサイズをAIが補う | 指示に「よく使われるサイズを選ばない」と書き、ambiguous を返させる |
| 使用中止の品目に当てはめる | 使用中止の品目をプロンプトに渡さない。前の呼び名は新しい品目へ移す |
| AIが単位を換算してしまう | 書かれた単位のまま返させ、換算はフローの式で入り数を使って行う |
| グループのフォームが選べない | 編集画面のアドレスの Form Id を手で入れる |
| JSON が生成できないエラー | 「JSON のマークダウンを付けない」と指示に書く |
| 配列の要素にキーが無い形を作った | キーの無い配列は定義できない。要素をオブジェクトにする |
| プロンプトの出力の形を変えたのにフローが古いまま | 保存した時点の形が固定される。保存し直してフローの参照も直す |
| 依頼の文に利用者の名前が入る | フォームの説明文で頼み、プロンプトでも「(名前)」に置き換えさせる |
| 在庫のリストが古いまま発注の一覧ができる | 数えた日時を見て、古ければ一覧を作らない |
| 要確認の行が放置される | 毎日の要確認のメールに件数と経過日数を入れる |
上の3行が失敗のほとんどで、どれもAIが「気を利かせる」ことから起きます。 補わせない、換算させない、古い品目を見せない、を設計で守ります。
09セキュリティ・AIガバナンス上の注意点
この構成で扱うデータ: 品目と数量、依頼したフロアと職員の名前、急ぎかどうかです。利用者の名前や状態は、この構成では扱わない設計にしています。
- 利用者の情報を依頼の明細に入れない … 介護用品の依頼は、ときに特定の利用者の状態を表します(夜用の大きいパッドが急に増えた、など)。品目と数だけで依頼してもらい、名前はフォームの説明文とプロンプトの両方で外します
- AIの処理の場所を確かめる … 公式の一覧では、日本で GPT-4.1 mini と GPT-4.1 が GA (cross-geo) とされ、cross-geo のモデルは地域の外でデータを処理する場合があるとされています。品目と数量だけなら影響は小さいですが、法人の方針として国内での処理が求められるなら、管理者と使うモデルを決めてください
- 発注を自動で送らない … 出すのは承認済みの一覧までです。発注の数の誤りは、そのまま倉庫の棚か欠品になります
- 品目の切り替えを構成に入れない … 代わりの品や高い品への切り替えは、看護・介護の責任者と購買の担当が決めることです。 AIに提案させません
誤りが起きた場合のリスクは、依頼を落として欠品させることと、違う品や多すぎる数を発注することの2つです。 前者は要確認の行が放置されると起き、後者はAIが推測で埋めると起きます。どちらも「分からないものを分からないまま残す」という同じ設計で防ぎます。
10まず何から始めるか
1週目:品目マスタに呼び名の列を足す
表計算の品目の一覧を SharePoint のリストに移し、「現場での呼び名」と「使用中止」の列を足します。 各フロアのリーダーに、品目ごとの呼び方を聞き取ります。依頼の多い上位40品目から埋めれば、依頼の大半が埋まります。
2週目:30件で試す
先月の依頼から30件を選び、手元のAIの画面で読み替えをさせます。当時の発注と突き合わせ、書かれていないサイズを補っていないかを最優先で見ます。
3週目:フォームとフロー①を作る
依頼のフォームを作り、送信で品目の行に読み替えて依頼の明細に入れるところまで作ります。この時点では、紙の依頼票も並べて使い、同じ依頼が同じ行になるかを1週間見比べます。
4週目:フロー②と承認を足す
在庫のリストと発注の一覧のリストを作り、発注日に合計と在庫を照らすフローと承認を足します。最初の2回の発注日は、これまでどおり手で作った発注の一覧と並べて比べます。
2か月目: 紙の依頼票とチャットでの依頼をやめ、フォームに一本化します。要確認の理由を毎週数え、品目マスタの呼び名を足します。3か月目以降: 1件5分が何分になったかを実測し、要確認が1割台に落ち着いた時点で、この構成は完成です。
11関連ユースケース
12この仕組みを理解するための記事
13技術仕様の確認日・参考情報
| 確認した内容 | 情報源 | 確認日 |
|---|---|---|
| トリガー「When a new response is submitted」が Response Id を返し、「Get response details」で回答を取り出すこと。コネクタが組織のアカウントでだけ動くこと。グループのフォームは一覧に出ず Form Id を手で入れること。接続あたり60秒に300回の呼び出しの制限 | Microsoft Learn: Microsoft Forms connector | 2026-10-28 |
| 2025年5月から「Create text with GPT using a prompt」のアクション名が「Run a prompt」になったこと。利用量の上限や容量の制限を受けることがあること。プロンプトの後に Approvals で人の確認を入れる手順 | Microsoft Learn: Use your prompt in Power Automate | 2026-10-28 |
| テキストの入力でテキストの情報の取り出しができること。入力に指示を含めることはできず、セキュリティの理由で禁じられていること | Microsoft Learn: Add inputs to your prompt | 2026-10-28 |
| 出力を JSON にでき、Custom の形が保存時に固定されること。キーの無い配列を定義できないこと。「A JSON could not be generated」のときに JSON のマークダウンを付けない指示を足すこと | Microsoft Learn: JSON output | 2026-10-28 |
| 日本で GPT-4.1 mini・GPT-4.1 が GA (cross-geo) で、cross-geo のモデルは地域の外でデータを処理する場合があること | Microsoft Learn: Prompt model availability by region | 2026-10-28 |
| Get items の Filter Query・Order By・Top Count・Limit Columns by View(列のしきい値の問題を避ける)。Create item・Update item の操作 | Microsoft Learn: SharePoint connector | 2026-10-28 |
| スケジュール済みクラウドフローが決まった時刻や繰り返しで動き、Recurrence のトリガーが付くこと | Microsoft Learn: Triggers - Power Automate | 2026-10-28 |
どの仕入先から買うか、在庫をどこまで持つか、品目を切り替えるかは、施設の購買の担当と看護・介護の責任者で決めてください。 本記事は公開されている仕様で確認できた範囲だけを扱っています。
実装ステータス:構成例。 公開仕様に基づいて設計した構成であり、当社で実際に構築・検証したものではありません。工数の数値はモデル条件による試算です。
自社の業務に使えるAI活用候補を整理します
このユースケース(UC-2214)についてのご相談はこちらから。
