在宅医療事務の効率化:Excel・RPA・API連携でできる突合と期限管理

在宅医療事務の効率化:Excel・RPA・API連携でできる突合と期限管理

在宅医療の事務は、訪問スケジュール、カルテ、レセプト、指示書、勤怠と、別々のシステムにある情報を人の目で突き合わせる作業が多くなりがちです。この記事では、特定の製品に頼らず、Excel や Google スプレッドシートの関数、RPA(画面操作の自動化)、システム間のAPI連携を使って、訪問実績とレセプトの突合、算定漏れチェック、指示書の期限管理、勤怠と給与の突合をどう仕組みにするかを、表の作り方と関数の例まで具体的に紹介します。判定のルールは、令和8年度改定後の通知など公的資料で確認したものに基づいています。

この記事でわかること

  • 在宅医療事務で自動化・半自動化に向くチェックの選び方
  • 突合しやすいデータの持ち方(1行1件の明細表)
  • 訪問実績とレセプト、同日ルール、指示書の期限をチェックする関数の例
  • 勤怠記録と訪問記録・給与を突き合わせるときの考え方
  • RPA・API連携を使う場面と、導入時の注意点

自動化に向く「突合」を選ぶ

効率化の第一歩は、ツール選びではなく「何と何を突き合わせ、どのルールで差異とみなすか」を決めることです。ルールが文章で説明できるチェックは、関数や自動処理に置き換えられます。在宅医療の事務で効果が出やすいのは、次の四つです。

チェック 突き合わせるデータ 判定ルールの例 ルールの根拠
訪問実績とレセプト 訪問スケジュール・カルテの訪問記録/レセプトの算定内容 訪問診療の回数と算定回数が一致するか。在宅時医学総合管理料(在医総管)の区分が月の訪問回数と合っているか 医科点数表・留意事項通知
算定漏れ・同日ルール 訪問診療の実施日/訪問看護の実施日/事業所マスタ 特別の関係にある訪問看護ステーションの医療保険の訪問と、訪問診療が同じ日にないか 訪問看護療養費の留意事項通知、医科の留意事項通知
指示書の期限管理 指示書台帳/訪問看護の実施日 有効期間内に訪問しているか。期限が近いものはないか 医科の留意事項通知(有効期間6月以内など)
勤怠と給与 打刻記録/訪問記録・カルテ記載時刻/給与の支給項目 打刻の外側で業務記録がないか。時間外・深夜の時間数が給与に反映されているか 労働時間の適正把握ガイドライン、労働基準法

準備:データを「1行1件」の明細表に整える

突合がうまくいかない原因の多くは、データの形にあります。カレンダー形式の予定表や、患者ごとにシートが分かれた記録は、人が見るには便利でも関数では数えにくくなります。まず、各システムからCSVなどで出力したデータを、1行に1回の訪問(1件の算定、1枚の指示書)が並ぶ明細表に整えます。

訪問実績シートの列の例

列 項目 入力・作成のルール
A 患者ID 電子カルテの患者番号。氏名ではなくIDで突合する
B 訪問日 日付型(文字列の「10/5」にしない)
C 区分 訪問診療/往診/訪問看護 など、選択肢を固定する
D 事業所 訪問した医療機関・ステーション名(マスタと同じ表記)
E 保険 医療/介護
F 建物ID 集合住宅・施設ごとの番号
G 月 関数で作成(後述)
H 週開始日 関数で作成(後述)
I 特別の関係 事業所マスタから自動で引く(Y/N)

ポイントは三つです。キーは氏名ではなくIDにすること(同姓同名や表記揺れを避けるため)、日付は必ず日付型にすること、事業所名や区分は入力規則(プルダウン)で選択肢を固定することです。表は Excel の「テーブル」機能で範囲を管理しておくと、行が増えても数式が自動で広がります。

患者情報を含むファイルの保存場所、アクセスできる職員、持ち出しのルールは、厚生労働省の「医療情報システムの安全管理に関するガイドライン」(令和8年6月に第7.0版へ改定)を踏まえて院内で決めておきます。共有フォルダやクラウドに置く場合も、誰がいつ開いたかを後から確認できる状態にしておくと安心です。

訪問実績とレセプトを突合する手順

医科の留意事項通知では、「週」単位とされている算定回数は、特に定めのない限り日曜日から土曜日までの1週間、「月」単位は月の初日から末日までの1か月を単位とするとされています。週の区切りを関数で正しく作ることが、回数チェックの前提になります。

  1. 月と週開始日を作る。G列に月、H列にその週の日曜日の日付を入れます。年をまたぐ週でも区切りがずれないよう、週番号ではなく「週の開始日」をキーにします。
    G2: =TEXT(B2,"yyyy-mm")
    H2: =B2-WEEKDAY(B2,1)+1   (表示形式を日付にする)
  2. 週・月ごとの訪問診療回数を数える。
    同じ週の訪問診療回数: =COUNTIFS($A:$A,A2,$C:$C,"訪問診療",$H:$H,H2)
    同じ月の訪問診療回数: =COUNTIFS($A:$A,A2,$C:$C,"訪問診療",$G:$G,G2)

    在宅患者訪問診療料(Ⅰ)の「1」は、厚生労働大臣が定める疾病等の患者を除き週3回が限度とされています。週の回数が3を超える行に印を付け、疾病等に当たるかを確認します。

    =IF(COUNTIFS($A:$A,A2,$C:$C,"訪問診療",$H:$H,H2)>3,"週3回超:疾病等の該当を確認","")
  3. レセプト側を集計する。レセプトの算定内容を「患者ID・月・算定項目・回数」の明細にし、突合シートで実績と並べます。
    実績回数: =COUNTIFS(訪問実績!$A:$A,A2,訪問実績!$G:$G,B2,訪問実績!$C:$C,"訪問診療")
    算定回数: =SUMIFS(レセ!$D:$D,レセ!$A:$A,A2,レセ!$B:$B,B2,レセ!$C:$C,"在宅患者訪問診療料*")
    差:       =C2-D2

    差が0でない行を条件付き書式で色付けすれば、確認すべき患者だけが浮かび上がります。

  4. 在医総管の区分を照合する。在医総管は、月2回以上か月1回かといった訪問の回数と、単一建物診療患者の人数(1人、2~9人、10~19人、20~49人、それ以外)で点数が分かれます。月の回数から想定区分を出し、レセプトの区分と比べます。
    想定区分: =IF(C2>=2,"月2回以上",IF(C2=1,"月1回","訪問なし"))
    算定区分: =XLOOKUP(A2&"|"&B2,レセ区分!$E:$E,レセ区分!$F:$F,"未算定")

    (レセ区分シートのE列に「患者ID|月」の結合キーを作っておきます。)

ここで大切なのは、Excelは判定ではなく「確認候補の抽出」に使うことです。在医総管の区分は、訪問診療料(Ⅰ)の「1」などを月に何回算定したか、別に厚生労働大臣が定める状態の患者か、情報通信機器を用いた診療があるかによって決まります。単一建物診療患者の人数も、同じ建物で自院(特別の関係にある医療機関を含む)が在医総管等を算定する人数で数え、同居する同一世帯の患者や、戸数に対して患者が少ない建物の扱いなどの例外があります。関数で機械的に決めきろうとせず、差異が出た行を人が通知に照らして確認する、という役割分担にすると、誤った自動判定を防げます。

同日ルールと加算の算定漏れをチェックする

訪問看護療養費の留意事項通知では、訪問看護ステーションと特別の関係にあり、そのステーションに指示書を交付した医師が所属する医療機関が、訪問診療料などを算定した日は、原則としてステーションは訪問看護療養費を算定できないとされています(訪問看護後の急変による往診、退院後1月以内などの例外あり)。一方、介護保険の訪問看護はこの同一日の考え方の対象外です。したがって、抽出の対象は「医療保険」かつ「特別の関係にあるステーション」の訪問看護に絞れます。

(訪問診療の行に入れる)同日の要確認訪問看護:
=IF(C2="訪問診療",
  COUNTIFS($A:$A,A2,$B:$B,B2,$C:$C,"訪問看護",$E:$E,"医療",$I:$I,"Y"),
  "")

I列の「特別の関係」は、事業所マスタ(事業所名と、特別の関係の有無の2列)から XLOOKUP で引いておきます。結果が1以上の行は、例外に当たるか、どちらを算定するかを確認します。

加算のチェックに使えるルールの例

  • □ 訪問看護指示料は患者1人につき月1回。同じ月に複数のステーションへ交付していても1回だけか
  • □ 特別訪問看護指示加算は月1回(気管カニューレ使用中・真皮を越える褥瘡の人は月2回)を超えていないか
  • □ 在医総管・施設総管等を算定している患者に、衛生材料等提供加算を算定していないか(管理料に含まれるため)
  • □ 在宅医療DX情報活用加算と、電子的診療情報連携体制整備加算・訪問看護医療DX情報活用加算が同じ月に重なっていないか
  • □ 指示書を交付した月に、訪問看護指示料を算定し忘れていないか

それぞれ「患者ID×月」でCOUNTIFSを使えば、上限を超えた行や、あるはずの算定がない行を抽出できます。チェック項目は、改定や疑義解釈が出るたびに見直してください。

指示書の期限を自動で知らせる

訪問看護指示書の有効期間は6月以内、特別訪問看護指示書による頻回の訪問は14日以内、在宅患者訪問点滴注射指示書は7日以内と、留意事項通知で定められています。指示書台帳を1行1枚で作り、次のような列と数式を置きます。

列 項目 数式・ルールの例
A 患者ID 入力
B 種類 通常/特別/精神科/精神科特別/点滴
C 開始日 指示書の記載どおり入力
D 終了日 指示書の記載どおり入力(自動計算で埋めない)
E 残日数 =D2-TODAY()
F 状態 =IF(E2<0,"期限切れ",IF(E2<=30,"更新準備",""))
G 期間の確認 =IF(AND(B2="通常",D2>EDATE(C2,6)),"6月を超えていないか確認","")

終了日を自動計算で埋めないのは、主治医が記載した期間こそが根拠だからです。数式はあくまで、記載内容が上限を超えていないかを点検するために使います。さらに、訪問看護の実施日ごとに「その日を含む指示書があるか」を数えれば、期間外の訪問を拾えます。

(訪問看護の行に入れる)有効な指示書の数:
=COUNTIFS(指示書台帳!$A:$A,A2,指示書台帳!$C:$C,"<="&B2,指示書台帳!$D:$D,">="&B2)
→ 0 なら「指示書の期間外」として確認

F列が「更新準備」になった行を毎週決まった曜日にフィルタで抽出し、医師への作成依頼一覧にする運用にすれば、確認漏れが起きにくくなります。

勤怠と訪問記録・給与を突き合わせる

厚生労働省の「労働時間の適正な把握のために使用者が講ずべき措置に関するガイドライン」(平成29年1月策定)では、始業・終業時刻は使用者の現認か、タイムカード・ICカード・パソコンの使用時間の記録などの客観的な記録を基礎に確認することが原則とされています。自己申告制による場合も、入退場記録やパソコンの使用時間などから把握した在社時間と著しい乖離があれば、実態調査を行って補正することが求められています。訪問系の職場では、訪問記録やカルテの記載時刻が、打刻と並べて確認できる客観的なデータになります。

突合シートの作り方

  1. 勤怠システムから「職員ID・日付・出勤打刻・退勤打刻」を出力する。
  2. 訪問記録・カルテから「職員ID・日付・最初の訪問開始・最後の訪問終了・最後の記録時刻」を出力する。
  3. 職員ID+日付をキーに XLOOKUP で横に並べる。
  4. 打刻の外側にある業務時間を分単位で出し、一定以上の行に印を付ける(しきい値は院内で決める)。

列は、A=職員ID、B=日付、C=出勤打刻、D=退勤打刻、E=最初の訪問開始、F=最後の訪問終了、G=最後の記録時刻とします。時刻は「時刻型」で持ち、差を1440倍すると分になります。

退勤後の業務記録(分): =MAX(0,(G2-D2)*1440)
出勤前の訪問開始(分): =MAX(0,(C2-E2)*1440)
日をまたぐ勤務の実働(時間): =MOD(D2-C2,1)*24

印の付いた行は、すぐに打刻を直すのではなく、本人と上長に事実を確認したうえで、労働時間として扱うべきかを判断します。そのうえで、時間外・深夜・休日の時間数が給与の支給項目に正しく反映されているかを確認します。厚生労働省のリーフレットでは、時間外労働の割増賃金率は月60時間以下の部分が25%、60時間を超える部分が50%(中小企業も2023年4月1日から適用)、深夜(22時~5時)の割増は25%、法定休日労働は35%とされています(いずれも「以上」の率)。給与システムの設定がこれらと合っているかを、月に一度サンプルで検算するだけでも、設定ミスに早く気づけます。

なお、出勤簿やタイムカードなど労働時間の記録に関する書類は、労働基準法第109条に基づき保存が必要で、厚生労働省の改正労働基準法Q&Aでは、保存期間は5年に延長され、経過措置として当分の間は3年とされています。突合に使った元データも、同じ考え方で保存期間を決めておきましょう。

RPA・API連携の使いどころと導入の進め方

関数でのチェックが定着すると、次に手間として残るのは「各システムからデータを出力して所定の場所に置く」作業です。ここでRPAやAPI連携が役に立ちます。

手段 向いている作業 注意点
表計算の関数・Power Query 等 出力済みデータの整形、突合、集計 元データの列構成が変わると壊れる。列名で参照する
RPA(画面操作の自動化) APIのないシステムで、毎月同じ手順で行うCSV出力や帳票ダウンロード 画面の変更で止まる。ID・パスワードの保管方法、実行ログの確認が必要
API連携 システム間で定期的にデータを受け渡す処理 提供元の利用条件、権限範囲、エラー時の再実行手順を決めておく

小さく始める手順

  1. 今月いちばん時間がかかったチェックを一つ選び、判定ルールを文章で書き出す(根拠となる通知の箇所も書く)。
  2. 必要なデータの出力元と列を決め、1行1件の明細表を作る。
  3. 関数で差異を抽出し、1~2か月は手作業の結果と並行して答え合わせをする。
  4. 結果が一致するようになったら、出力作業をRPAやAPIで自動化する。
  5. 手順書(どこから、何を、いつ出力し、差異が出たら誰が確認するか)を作り、担当者以外でも回せるようにする。

私が担当している現場でも、最初から全部を自動化しようとした仕組みより、一つのチェックを確実に回すところから始めた仕組みのほうが長続きしています。自動化した処理が「なぜその結果になったか」を説明できない状態(ブラックボックス化)を避けるため、判定ルールと根拠を一覧にした文書を、数式と一緒に保管しておくことをおすすめします。

よくある質問

Q. Excel と Google スプレッドシートのどちらで作ればよいですか。

A. この記事で紹介した COUNTIFS、SUMIFS、XLOOKUP、EDATE、WEEKDAY、TEXT などの関数は、どちらでも使えます。院内の既存の運用や、患者情報の保存場所に関するルールに合うほうを選んでください。どちらの場合も、医療情報の安全管理のルールに沿ってアクセス権限を設定することが前提です。

Q. 突合で差異が出たら、すぐにレセプトを直してよいですか。

A. 差異は「確認が必要な候補」です。記録の入力漏れなのか、算定の誤りなのか、例外規定に当たる正しい算定なのかを、カルテと通知に照らして確認してから修正します。原因を「記録漏れ」「算定誤り」「例外で問題なし」などに分類して残しておくと、次月以降のチェック項目の改善に役立ちます。

Q. 指示書の終了日を関数で計算して入力してもよいですか。

A. おすすめしません。有効期間は主治医が指示書に記載するものなので、台帳には記載どおりの日付を入れ、関数は「上限を超えていないか」「期限が近いか」の点検に使うほうが安全です。

Q. どのくらいの頻度でチェックすればよいですか。

A. 指示書の期限は週1回、訪問実績とレセプト・同日ルールはレセプト作成前の月1回、勤怠と訪問記録は給与締め前の月1回、というように、業務の締めに合わせて決めると無理なく続けられます。

まとめ

在宅医療事務の効率化は、ツールの導入よりも先に「何と何を、どのルールで突き合わせるか」を決めることから始まります。データを1行1件の明細表に整え、IDと日付型をそろえれば、COUNTIFS や SUMIFS、XLOOKUP だけでも、訪問回数とレセプトの差異、特別の関係にあるステーションとの同日、指示書の期間外訪問、打刻外の業務記録といった確認候補を自動で抽出できます。関数は判定を代行するものではなく、人が通知に照らして確認すべき行を絞り込む道具と位置付け、出力作業の自動化はチェックが安定してからRPAやAPI連携で段階的に進めるのが現実的です。

参考資料

本記事は2026年10月時点で公表されている資料をもとに作成しています。算定の可否は個別の状況で異なるため、最終的には告示・通知・疑義解釈や、管轄の地方厚生局・保険者にご確認ください。

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