仕入先から届いたCSVをExcelで開くと、商品コードの先頭ゼロが消えている。これが起きた日の突合は止まります。CSVの数値列は開いた瞬間に数値化され、「00123」は「123」へ静かに変わります。見た目だけ直して突合を続けるのが事故の出口です。AIに任せるのは、「0落ちで突合不能になっている行」を列挙するところまでです。桁数の規格(6桁か7か)の確定と、0埋め後の再突合は人の仕事です。
全体の型: 0落ちの列挙はAI、桁数の確定と再突合は人間
- 任せる: 0落ちが疑われる行の列挙、桁落ちのパターン(先頭のみ/途中欠けでない事実確認)、TEXT式の候補例示
- 残す: 桁数の規格の確定(仕分先システムとの突合キー)、置換後の再突合、元CSVの取り扱い判断
手順1: 問題になった2列をそのまま貼る
貼るのは「自社の突合キー」と「仕入先CSVの値」の並びです。修正後の値を先に直して貼らないでください。
| 自社帳票 | 仕入先CSV | 突合結果 |
|---|---|---|
| 001123 | 1123 | 不一致(0落ち) |
| 000457 | 457 | 不一致(0落ち) |
| 002098 | 2098 | 不一致(0落ち) |
数値は例です。実データは当日の突合エラーリストから引きます。
手順2: 依頼文を貼る
以下は、仕入先CSVを取り込んだとき商品コードの先頭ゼロが消え、突合が止まった件です。
2つのリストを突き合わせて、以下を表形式で挙げてください。
①0落ち(先頭ゼロの消失)が原因で不一致になっている組み合わせだけを列挙
②両リストの桁数の並び(最大桁・最小桁の事実のみ)
③先頭ゼロで埋める場合のTEXT式の候補例(あくまで例示です)
式の置換や上書きは行わないでください。根拠が推測になるものは「不明」と1行で出力してください。
自社の突合キー:
(ここに貼り付けます)
仕入先CSVの値:
(ここに貼り付けます)
手順3: 返ってくる診断表の形
| 自社 | CSV | 原因(事実) | 埋め桁の候補 |
|---|---|---|---|
| 001123 | 1123 | 先頭ゼロ消失(CSV取り込み時の数値化) | 6桁: =TEXT(B2,"000000") |
| 457 | 457 | 一致(0落ちで同数値) | 変更不要 |
0落ちが「消えた」のではなく「数値化されて等価になった」組み合わせまで出てくるのが、この事故の面倒なところです。
やって起きた失敗: 見た目だけ直して金額が二重に跳ねた
0落ちの行だけ「先頭に0を入れる」置換をした月がありました。突合は通ったのですが、置換は「数値のままでの見た目変更」だったため、翌月の再取り込みで同じ0落ちが再発しました。さらに手で0を足した行とTEXT関数で埋めた行が混在し、突合キーの文字列比較で二重に失敗しました。修正は該当の突合キー列だけにTEXT式を入れ、再突合を1回通す。置換ではなく式に寄せておくと、翌月の再取り込み後も同じ式で通ります。
検算の4点
- 埋め後の突合キーが、仕入先システムの規格桁(例: 6桁)と一致すること。桁数はAIには確定できないので人間が決める
- 一致件数・不一致件数が、置換前の突合リストと整合すること。件数が増減したら0落ち以外の原因を疑う
- 金額列・数量列はTEXT化しない。0落ちの対処は突合キー列だけに限定する
- 再突合後、残った不一致は0落ちではなく取り込み漏れ・先月繰越を順に確認する
まとめ
- CSV取り込み直後の突合停止の基本型は、コード列の数値化による先頭ゼロ消失。0落ち行の列挙は2リストの突き合わせでAIに任せる
- 桁数の確定と置換の実行は人が行う。見た目の置換は翌月に再発するので、TEXT式に寄せる
- 対象列は突合キーだけに限定。金額・数量までTEXT化すると次の事故を生む
この連載では、Excelしか開けない現場で、生成AIに何を任せて何を残すかを、経理・事務の作業ごとに書いていきます。プロンプトは毎回コピーして使える形で載せます。書籍2冊(vol.1/vol.2)はKindle Unlimited(読み放題)で読めます(vol.2)。テンプレート集はyoshito.yuenreach.comにまとめています。