エクセルの突合・チェック作業を自動化する——AI任せにしない設計
2つの表を突き合わせて食い違いを探すチェック作業は、神経を使うわりに機械的な処理です。この記事では、差異の洗い出しは機械に任せ、判断を人に残す設計と、関数・Power Query・AIの使い分けを解説します。
結論から
- 突合・チェック作業は「差異の洗い出し」と「差異をどうするかの判断」に分かれます。前者は機械に任せ、後者を人に残すのが基本設計です
- 「AIに2つの表を渡して間違いを探させる」のは、チェック作業では推奨しません。AI自身が見落とす可能性があり、チェックの意味が薄れるためです
- 関数やPower Queryで機械的に突合し、AIは「突合の仕組みを作る係」と「差異の原因を推測する係」に使うと、確実さと楽さを両立できます
突合・チェック作業の正体
管理部門の仕事には、2つの情報を突き合わせて食い違いを探す作業が数多くあります。
これらは神経を使うわりに、やっていることは「AとBを比べて、違う行を見つける」という機械的な処理です。目視チェックは時間がかかるだけでなく、疲れによる見落としが必ず発生します。件数が多いチェック作業ほど、機械化の効果が大きい領域です。
- 請求書の一覧と入金明細の突合(消込)
- 発注データと納品データの照合
- システムから出した売上と、営業が付けているExcelの突合
- 前月データと今月データの差分確認
大原則——洗い出しは機械、判断は人
自動化を設計するとき、チェック作業を2つの工程に分けて考えてください。
工程1は、同じ入力に対して常に同じ結果が出る決定的な処理が向いています。Excelの関数(XLOOKUPやCOUNTIFなど)やPower Queryがこれにあたり、渡した全件を確実に比べます。一方、生成AIは確率的に動く仕組みのため、大量の表を渡して「違いを探して」と頼むと、まれに見落としや思い込みが混ざります。見落としてはいけない工程に、見落とす可能性のある道具を使わない——これがチェック作業の自動化でいちばん大事な原則です。
工程2は逆に、文脈の理解や社内事情が絡むため人の仕事です。ここでAIは「この差異の原因として考えられるものを挙げて」といった推測の壁打ち相手として役立ちます。
- 差異の洗い出し。AとBを突き合わせ、「一致しない行」「片方にしかない行」を漏れなくリストアップする
- 差異の判断。洗い出された差異について、「入力ミスなので直す」「入金が遅れているだけ」「値引きがあった」など、どう扱うかを決める
手段の比較——どの道具で突合するか
注目してほしいのは表の最後の行です。「関数やマクロを書ける人がいない」ことが自動化の壁だった会社でも、いまは生成AIに「A列の請求番号をキーに、シート1とシート2を突合して、金額が一致しない行に印を付けるマクロを作って」と日本語で頼めば、突合の仕組みそのものを作らせることができます。AIをチェックの実行係ではなく、チェックの仕組みを作る係にする使い方です。
| 手段 | 向いている場面 | 強み | 弱み |
|---|---|---|---|
| 関数(XLOOKUP・COUNTIF等) | 件数が数千件まで・キーが明確 | 手軽、全件を確実に照合 | 数式を組む知識が要る |
| Power Query | 毎月繰り返す定型の突合 | 手順を保存して再実行できる | 初回の設定に慣れが要る |
| マクロ(VBA) | 複数シート・複数ファイルの一括チェック | 細かい業務ルールを組み込める | 作った人に属人化しやすい |
| 生成AI(直接比較) | 少件数の下見・形式が崩れた表 | 準備なしで試せる | 見落としの可能性、件数に限界 |
| 生成AI(仕組み作り) | 上記の数式・クエリ・マクロを作る | 知識がなくても始められる | 出力の検証は必要 |
導入の手順
- チェックのルールを言葉にする。「何と何を、どのキーで突き合わせ、何が一致すればOKか」を1〜3行で書き出します。ここが曖昧なチェックは自動化できません(そして多くの場合、手作業でも人によって結果がぶれています)
- 突合キーを揃える。請求番号や取引先コードなど、両方の表に共通するキーが必要です。キーがない・表記がゆれている場合は、先にデータ整形が必要です(詳しくは名寄せの記事へ)
- 小さく作って検証する。まず1か月分などで仕組みを作り、これまで手作業で見つけていた差異を同じように検出できるか確かめます
- 差異リストの運用を決める。「洗い出された差異を誰がいつ判断するか」まで決めて、初めて業務として回ります
自動化しても残る仕事・向かないケース
自動化後も、差異の原因調査と判断は人の仕事として残ります。ただし「全件を目でなめる」から「機械が挙げた差異だけを見る」に変わるため、負担の質が大きく変わります。
一方で、向かないケースも正直に挙げておきます。
- チェック基準が人によって違う業務。先に基準の統一が必要です
- 突合キーが存在しない表同士。機械的な照合ができないため、まずデータの持ち方の見直しが先です
- 年に数回しかない少件数のチェック。仕組みを作る手間が見合わないことがあります
よくあるご質問
- ChatGPTに2つの表を貼り付けて「違いを探して」と頼むのはだめですか?
- 少件数の下見や、形式が崩れていて関数で扱いにくい表の一次確認には便利です。ただし、業務上見落としが許されないチェックの本番には推奨しません。生成AIは全件を確実に照合する保証がないためです。本番は関数やクエリで機械的に照合し、AIはその仕組み作りに使ってください。
- 金額が1円単位でずれるのはなぜですか?
- 消費税の端数処理や四捨五入のタイミングの違いが典型的な原因です。突合の仕組みを作る際に「何円までの差を許容するか」をルールとして決めておくと、判断が要る差異だけが残るようになります。
- 突合結果の見落としがないか不安です。検算の方法はありますか?
- 「両方の表の合計金額と件数を先に照合する」のが簡単で効きます。合計が合っていれば大きな漏れはなく、合っていなければ必ずどこかに差異があります。件数・合計の照合を仕組みに組み込んでおくことをおすすめします。考え方の詳細はAIの精度に関する記事でも扱っています。