Claudeで動物病院のワクチン・フィラリア予防の期限案内をExcelで作る
接種日と次回期限だけの匿名の台帳から、期限切れと近日分を抜き出し、狂犬病・混合ワクチン・フィラリア予防で文面を分ける手順を、Claude for Excelの使い方と獣医師が見る箇所つきで示します。
動物病院の期限案内は、ワクチンや予防薬の「次はいつか」を台帳で追い、近づいた患者さんから連絡していく仕事です。狂犬病、混合ワクチン、フィラリア予防と項目が増えるほど、期限切れの見落としと、項目に合わない文面の送付が起きやすくなります。
この記事では、Claude for Excelで台帳に区分の列を足し、案内が要る行だけを別シートに抜き出し、項目ごとの文面を数式で差し込むところまでを組みます。日付の計算と抽出はExcelの機能で確実に処理し、Claudeには表の組み立てと文面の下書きを任せる分担です。データはすべて架空で、患者IDだけを使います。
期限案内は、抽出・並べ替え・文面の3つに分けて任せる
台帳から文面まで1回の依頼で頼むと、どこで間違えたかが追えません。次の4段に分け、1段ごとに結果を見ます。
期限案内の準備を4段に分ける
- 1
状況区分の列を足す
次回期限と基準日の差から、期限超過・近日・範囲外を数式で出します。
- 2
案内リストを別シートに抜き出す
未案内で、超過か近日の行だけを期限の早い順に並べます。
- 3
項目別の雛形を作る
狂犬病・混合ワクチン・フィラリア予防の3種を、1回ずつ下書きして人が直します。
- 4
患者ごとの文面を数式で差し込む
期限の日付は、文章の生成ではなくセルの参照で入れます。
最後の段を数式にするのが、この手順のいちばんの工夫です。日付をClaudeに文章として書き直させると、1つの取り違えが飼い主への案内に載ります。数式で参照すれば、台帳の値と必ず一致します。
使える環境と、飼い主の情報を台帳に入れない理由
Claude for Excelは、Pro、Max、Team、Enterpriseの各プランで使えるExcelのアドインです。対応する環境は、Excel on the web、Microsoft 365契約のWindows版(ビルド16.0.13127.20296以降)、Mac版(バージョン16.46以降)です。Excel 2016・2019の買い切り版、iPad、Androidでは動きません。
使えない機能もあります。マクロとVBAの操作、データテーブルは対象外です。台帳から案内文をメールやはがきの宛名に自動で流し込むマクロは、このアドインでは組めません。送付は人が行う前提で組みます。
データの扱いも、台帳を作る前に見ておきます。
- 入力と出力は、バックエンドで受け取りまたは生成から30日以内に削除される(例外あり)
- チャット履歴はブラウザー内に保存され、Anthropicのサーバーには保存されない
- 組織が設定したデータ保持の設定は引き継がれず、Enterpriseの監査ログにも活動は含まれない
- 顧客への最終成果物を人の確認なしで出すこと、機密性の高い・規制対象のデータを適切な統制なしで扱うことは推奨されていない
この記事の台帳は、患者ID・種別・項目・日付・状況だけで動くように設計します。飼い主の氏名、住所、電話番号、メールアドレスは入れません。宛名や連絡先は、案内文ができたあとに、院内の予約システムや顧客名簿から人が足します。Claudeに渡す表から個人を特定できる列を外しておけば、データの扱いの懸念も小さくなります。
もう1つ、外から届いたファイルの扱いがあります。他院からの紹介でもらった台帳や、ワクチンメーカーの配布テンプレートには、Claudeへの隠れた指示が仕込まれている可能性があります。信頼できるファイルだけで使い、元の台帳のコピーで試してから本番の表に移します。Claudeが危険な操作を提案すると確認を求められるので、外部由来のファイルでは中身を読んで承認します。
台帳の列は「項目」と「次回期限」を分けて持つ
列の設計が、後の手順の成否を決めます。日付は日付型で入れ、「4月20日」のような文字では持ちません。
| 列 | 項目 | 例 |
|---|---|---|
| A | 項目患者ID | 例P-001 |
| B | 項目種別 | 例犬 |
| C | 項目項目 | 例狂犬病 |
| D | 項目前回の接種日・投薬日 | 例2026/4/20 |
| E | 項目次回期限 | 例2027/4/20 |
| F | 項目状況 | 例未案内 |
| G | 項目期限までの日数 | 例(手順1で作る) |
| H | 項目区分 | 例(手順1で作る) |
項目は「狂犬病・混合・フィラリア」の3つに固定します。状況も「未案内・案内済み・来院済み・対象外」の4つに固定します。自由に書ける欄だと、「案内した」「案内ずみ」のような表記のゆれが出て、後の抽出条件に引っかからなくなります。
E列の「次回期限」は、病院が決めた値を入れる列です。混合ワクチンの間隔や、フィラリア予防薬の投薬期間は、獣医師が動物ごとに判断する領域で、Claudeに決めさせる値ではありません。「次に来院・接種・投薬してほしい日」を病院の運用で決め、その日付を入れます。
一方、狂犬病は事情が違います。厚生労働省の狂犬病のページによると、犬の飼い主には、現在居住している市区町村に飼い犬を登録すること、飼い犬に年1回の狂犬病予防注射を受けさせること、犬の鑑札と注射済票を装着することが義務づけられています。同じページは、4・5・6月を「狂犬病予防注射の月間」としています。この義務の対象は犬なので、台帳に「猫×狂犬病」の行があれば入力ミスの疑いがあります。手順1で、そのチェック列も足します。
この表の上に、別シート「前提」を作り、B1に基準日、B2に先行日数(期限の何日先まで見るか)を置きます。基準日はTODAY関数にもできますが、検算のあいだは固定の日付にしておくと、画面と記事の例が一致します。この記事の例では、基準日を2027年3月25日、先行日数を30日とします。
架空の6件を、次のように入れたとします。
| 患者ID | 種別 | 項目 | 次回期限 | 状況 |
|---|---|---|---|---|
| P-001 | 種別犬 | 項目狂犬病 | 次回期限2027/4/20 | 状況未案内 |
| P-002 | 種別犬 | 項目混合 | 次回期限2027/3/10 | 状況未案内 |
| P-003 | 種別猫 | 項目混合 | 次回期限2027/4/2 | 状況案内済み |
| P-004 | 種別犬 | 項目フィラリア | 次回期限2027/4/28 | 状況未案内 |
| P-005 | 種別猫 | 項目混合 | 次回期限2027/3/25 | 状況未案内 |
| P-006 | 種別犬 | 項目狂犬病 | 次回期限2027/6/1 | 状況未案内 |
手順1: 期限までの日数と区分を数式で出す
最初の依頼は、G列とH列を作るだけに絞ります。
台帳シートのG列に「期限までの日数」、H列に「区分」を作ってください。
G列は、次回期限(E列)から「前提」シートのB1(基準日)を引いた日数です。
H列は次のとおりです。
- 状況(F列)が「未案内」でなければ「案内不要」
- 未案内で、G列が0未満なら「期限超過」
- 未案内で、G列が0以上かつ「前提」シートのB2以下なら「近日」
- それ以外は「範囲外」
さらにI列に、種別が「猫」で項目が「狂犬病」の行だけ「要確認」と出してください。
どの列も値の貼り付けではなく、数式にしてください。H列の式は、例えば次の形になります(Excelの標準関数を使った一例です)。
=IF(F2<>"未案内","案内不要",IF(G2<0,"期限超過",IF(G2<=前提!$B$2,"近日","範囲外")))期限当日の「0」を、超過ではなく近日側に入れる点がポイントです。当日はまだ超過していませんが、案内はいちばん急ぎます。この条件を依頼文に明記しないと、境界の扱いがClaudeの解釈に任されます。
例の6件を判定すると、次のとおりになります。
| 患者ID | 期限までの日数 | 区分 |
|---|---|---|
| P-001 | 期限までの日数26 | 区分近日 |
| P-002 | 期限までの日数-15 | 区分期限超過 |
| P-003 | 期限までの日数8 | 区分案内不要 |
| P-004 | 期限までの日数34 | 区分範囲外 |
| P-005 | 期限までの日数0 | 区分近日 |
| P-006 | 期限までの日数68 | 区分範囲外 |
P-003は期限が近くても、案内済みなので外れます。P-004はフィラリア予防で、先行日数の30日を4日超えているため、今回は範囲外です。
式の意味に不安があるときは、Claude for Excelに「H2の値はどのセルからどう計算されているか」と聞きます。答えにはセルへの参照がつき、クリックで該当のセルへ移動できます。
手順2: 案内リストを別シートに抜き出す
次に、区分が「期限超過」か「近日」の行を、別のシートに抜き出します。
新しいシート「案内リスト」を作り、台帳から区分が「期限超過」または「近日」の行を抜き出してください。
並び順は次回期限の昇順です。
列は患者ID・種別・項目・次回期限・期限までの日数・区分です。
台帳の元の列は変更しないでください。例の6件なら、リストには3件が残ります。
| 患者ID | 項目 | 次回期限 | 期限までの日数 |
|---|---|---|---|
| P-002 | 項目混合 | 次回期限2027/3/10 | 期限までの日数-15 |
| P-005 | 項目混合 | 次回期限2027/3/25 | 期限までの日数0 |
| P-001 | 項目狂犬病 | 次回期限2027/4/20 | 期限までの日数26 |
使う関数は、Excelの版や設定で変わります。Claudeが作った式がどの関数で、どの範囲を見ているかは、手順1と同じく「この式は何をしているか」と聞いて確かめます。抽出元の台帳に行を足したとき、リストに反映されるかどうかも、1行足して試します。
Claude for Excelは、並べ替え、フィルター、条件付き書式、データの入力規則によるドロップダウン作成といったExcelの標準操作を、直接頼めます。この台帳では、次の2つを足すと運用が楽になります。
- F列「状況」に4択のドロップダウンを設定する(表記のゆれを防ぐ)
- 「期限超過」の行を条件付き書式で赤系に塗る
既存のデータを上書きする操作では、Claudeが実行前に警告を出します。依頼文に「元の列は変更しない」と書いておくと、確認の回数も減ります。
手順3: 狂犬病・混合・フィラリアで文面を分ける
案内文は、患者ごとには書かせません。項目ごとに雛形を1つずつ作り、患者に応じた部分だけを数式で差し込みます。項目で文面を分けるのは、伝える内容が違うからです。
項目で変わる文面の中身
狂犬病
年1回の予防注射である点と、期限の日付を伝えます。注射済票など、登録や手続きの案内は市区町村と院内の運用に合わせ、人が書きます。
混合ワクチン
次回の接種の時期を伝えます。ワクチンの種類や接種の可否は、獣医師が診察で決めるので、文面には書きません。
フィラリア予防
次回の来院・投薬の目安日を伝えます。投薬を始める時期や期間は、獣医師の指示を院内で確認して反映します。
「文面」シートを作り、A列に項目名、B列に雛形を置く構成にします。雛形の下書きは、Claude for Excelに頼みます。
「文面」シートを作り、A2:A4に「狂犬病」「混合」「フィラリア」を入れてください。
B2:B4に、各項目の案内文の雛形を書きます。
差し込む項目は【患者ID】【期限】の2つで、【】で囲んだ位置に入ります。
丁寧で簡潔な文体にし、予約をお願いする文末にしてください。
次の内容は書かないでください。
- ワクチンの種類、効果、副反応の説明
- 接種や投薬の可否の判断
- 費用の金額最後の3項目の禁止が重要です。医療の説明や可否の判断は、診察した獣医師が行う領域です。案内文にClaudeの言い換えが混ざると、診察と食い違う内容が飼い主に届きます。費用は、院内の料金表を正とし、文面には入れず、必要なら人が足します。
雛形が出たら、院内で使っている案内の文面と並べて読み、直します。直した版を雛形として確定させます。
手順4: 患者ごとの文面は、数式で差し込む
雛形が確定したら、「案内リスト」シートに「案内文」列を足します。
案内リストシートに「案内文」列を足してください。
項目(C列)に一致する雛形を「文面」シートから引き、
【患者ID】を患者IDに、【期限】を次回期限に置き換える数式にしてください。
期限はyyyy年m月d日の表示にしてください。
値の貼り付けにはしないでください。数式は、例えば次の形になります(一例です。シート名と範囲は台帳に合わせて直します)。
=SUBSTITUTE(SUBSTITUTE(
INDEX(文面!$B$2:$B$4,MATCH(C2,文面!$A$2:$A$4,0)),
"【患者ID】",A2),
"【期限】",TEXT(D2,"yyyy年m月d日"))項目名が「文面」シートに無い行は、MATCHがエラーを返し、セルに#N/Aが出ます。これは意図した動きです。項目の入力ミスは、見えないまま誤った文面になるより、エラーとして見えるほうが安全です。
数式にしておくと、台帳の期限を直したときに文面も更新されます。生成した文章を貼り付けただけの列は、台帳を直しても古い日付が残ります。
送る前に人が見る箇所
台帳から文面まで組めても、そのまま送る運用にはしません。Claude for Excelは、最終成果物を人の確認なしで出すこと、検証なしの重要な計算に使うことが推奨されていません。送付の前に、次の点を担当者が確かめます。
- 案内リストの件数が、台帳を並べ替えて数えた件数と合っているか
- 「要確認」の列に出た行(猫×狂犬病など)を、台帳の元の記録と照らして直したか
- 期限が極端に古い行(超過日数が大きい行)は、転居や死亡などで案内が不要になっていないか
- 項目別の文面が、その項目の雛形になっているか。先頭の数件を読み比べる
期限超過の日数が大きい行は、特に注意します。案内が必要な患者さんか、すでに来院しているのに台帳の更新が漏れているだけかは、台帳の数字からは判断できません。院内の予約記録と診療記録を、人が見て決めます。
同じ構成の仕組みは、期限を軸にした別業種の連絡でも使えます。保険の満期管理は、期限の3か月前に連絡リストを作る手順で、基準日と先行日数を前提シートに置く組み立てが共通です。会員名簿の年会費更新も、未更新者の抽出と区分別の案内文という流れが近い例です。
よくあるつまずき
落とし穴
日付が文字になっていて、日数が計算できない
CSVの取り込みなどで日付が文字として入ると、期限までの日数が#VALUE!になります。台帳を作った時点で、日付列がすべて日付型になっているかを、手順1の前に確かめます。Claude for Excelに「E列に日付以外の値が入った行を探して」と頼むと、該当の行を洗い出せます。
- 基準日が固定のまま: 検算で固定した基準日を、運用に移るときに戻し忘れると、毎日同じ結果が出ます。TODAY関数にするか、毎朝基準日を更新する運用を決めます
- 先行日数を全項目で同じにする: 今回の例では30日で統一していますが、予約が取りにくい時期の項目は、早めに案内したいかもしれません。項目ごとの先行日数を持たせる場合は、前提シートに項目別の表を置き、H列の式をその値の参照に変えます
- 案内済みへの更新漏れ: 案内を送っても状況を「案内済み」に変えなければ、翌日も同じ行が案内リストに残り、二重に案内します。送付後に状況を更新する担当を決めておきます
- 同じ動物の複数項目: 混合ワクチンとフィラリア予防の期限が重なる動物は、リストに2行出ます。1通にまとめて送るかどうかは、院内の運用で決めます
- 会話の履歴に頼る: チャット履歴はブラウザー内に保存されるため、別の端末や別のブラウザーでは見えません。依頼文と式は、台帳のメモ用シートに残します
台帳が長くなると、会話が自動でまとめ直されます。途中でClaudeの理解がずれたと感じたら、前提シートの内容と手順1の式を貼って、そこから再開します。
まとめ
期限案内は、「区分を数式で出す」「抽出する」「項目別の雛形を作る」「数式で差し込む」の4段に分けると、Claudeに任せる範囲と人が見る範囲がはっきりします。日付と件数の計算はExcelに、文面の下書きだけをClaudeに任せ、医療の説明と可否の判断は文面に入れません。
台帳に飼い主の個人情報を入れない設計は、データの扱いの懸念を小さくするだけでなく、列が少なくなって式も読みやすくなります。まず架空の数件で区分と抽出の結果を目で確かめ、そのあとで本番の台帳のコピーに移します。ペットの行動の相談にClaudeを使う場面の注意点は、ペットの気になる行動の相談にまとめています。