Excel管理表で同じ案件が二重に集計される原因。重複キーで二重計上を確認する手順

Excel管理表で同じ案件が二重に集計される原因。重複キーで二重計上を確認する手順のアイキャッチ画像 集計・データ構造

導入

請求管理表で月次の請求合計を出して経理に提出したら、「先月分が二重になっている」と指摘が入った。確認すると、同じ案件IDの行が2行入っていて、両方とも金額が計上されていた。CSV取込時に2回貼り付けてしまったのが原因――こんな場面はありませんか。

これは取込ミスではなく、重複キーによる二重計上を検知する仕組みがないことが原因です。本記事では、重複キーを決めて二重計上候補を常時可視化する手順をまとめます。

この記事で解決すること

項目 内容
解決する課題 同じ行や同じ案件を二重に集計する
主な原因 重複キーや集計対象条件がない
解決方法 重複キーで二重計上候補を確認する
対象業務 売上管理・請求管理・案件管理
対象人数 3〜30人
難易度 ★☆☆☆☆
作業時間 20分
用意するもの 対象のExcelファイル/編集権限
効果 二重集計を防ぎやすい
向かないケース 重複を許容する表

「重複候補件数」を1セル表示するだけで、CSV取込ミスや手作業の二重入力を即検知できます。月次の数字の信頼性が大きく上がります。

なぜその管理表はうまくいかないのか

  • 重複判定のキーが決まっていない(案件IDなのか、案件ID+日付なのか)
  • 同じ案件IDの行が2回入っても気づかない
  • CSV取込時に「追記」しているつもりが「重複」になる
  • 行追加時に既存IDとの重複チェックがない
  • 二重計上が見つかったときに、どちらを残すか判断できない

担当者の入力ミスではなく、重複を検知する仕組みが管理表側にないことが原因です。見直しは、重複キーを決めて検知関数を入れるところから始めます。

完成イメージ

直す前 — 重複に気づけない:

案件ID 顧客名 金額
K-001 山田商事 120,000
K-002 鈴木物産 80,000
K-001 山田商事 120,000 ← 二重

ピボットで案件IDの合計を出すと K-001 が二重に加算される。

直した後 — 重複検知列+件数表示:

案件ID 顧客名 金額 重複チェック
K-001 山田商事 120,000 2(重複)
K-002 鈴木物産 80,000 1
K-001 山田商事 120,000 2(重複)

シート上部に「重複候補件数」を表示し、≠0なら警告色。

改善手順

ステップ1. 重複キーを決める

何を持って「重複」とするかを確定します。

操作: 別シート「重複キー定義」を作り、A列に重複キーの候補、B列に判断理由、C列に採用/不採用を記入する。

記入例:

キー候補 判断理由 採用
案件ID単独 案件IDは一意採番している前提
案件ID+計上月 案件IDが同じでも月が違えば別行(請求月ごとに登録する業務の場合)
案件ID+顧客ID 念のため二重チェック用
顧客名+金額+日付 案件IDがない表用 ✗(精度低)

業務に合わせてキーを1つ決める。複合キーの場合は ConcatenateやTEXTで連結したヘルパー列を使う。

ステップ2. 重複検知の関数を入れる

各行に重複件数を表示する列を追加します。

操作: 表の右端に「重複チェック」列を追加し、 =COUNTIF(案件ID列, 案件ID) を入れる。複合キーの場合は =COUNTIFS(案件ID列, 案件ID, 計上月列, 計上月) のように使う。

記入例:

重複チェック列の数式 結果
=COUNTIF(A:A, A2) 1 = ユニーク、2以上 = 重複
=COUNTIFS(A:A, A2, D:D, D2) 案件ID+計上月の組み合わせで判定

✗悪い例: 重複検知列なしで運用 → 二重計上が紛れる ◎良い例: 1行ごとに重複件数が見え、2以上は色で警告

ステップ3. 重複候補件数を常時表示する

シート全体での重複件数を1セルで表示します。

操作: シート上部に重複サマリセルを置く。=COUNTIF(重複チェック列, ">1") で重複候補件数を出す。条件付き書式で「≠0なら赤」を設定。

記入例:

セル 内容 数式
A1 全件数 =COUNTA(案件ID列)-1
A2 重複候補件数 =COUNTIF(重複チェック列, “>1”)
A3 判定 =IF(A2=0,”◎”,CONCATENATE(“✗ 重複”,A2,”件”))

A2が0でなければ即座に分かる。

ステップ4. 重複が見つかったときの対応ルールを決める

重複候補が出たときの対応を運用ルール化します。

操作: 別シート「重複対応フロー」を作り、A列に状況、B列に対応を記入する。

記入例:

状況 対応
重複候補0件 集計続行
重複候補1〜数件 フィルタで重複行を抽出→どちらを残すか判断(日時の新しい方 or 入力者に確認)
重複候補10件以上 取込ミスを疑う、最近のCSV取込を巻き戻して再取込
重複が常態化 入力ルールの見直し、重複キーの再検討

重複を見つけたら、片方の行を削除する前に必ずバックアップシートを残す。誤削除リスクを避けるため。

ステップ5. 取込前にも重複チェックを行う

CSV取込時の重複混入を防ぐため、取込前のチェックを追加します。

操作: 取込前チェックシートに「重複検知」セクションを追加。CSV側のデータと既存元データを連結したシートに、重複検知関数を入れて取込前に確認する。

記入例:

取込前チェック項目 数式 判定
CSV内の重複 =COUNTIF(CSV案件ID列, CSV案件ID) 全行で1なら ◎
CSVと既存の重複 =COUNTIF(既存案件ID列, CSV案件ID) 全行で0なら ◎

CSVと既存に重複があれば、CSVを取り込まずに出力側に再出力依頼するか、既存行を削除してから取込する。

実務での注意点

  • 重複を許容する表(一覧確認用、参照ログなど)には重複検知は不要です。
  • COUNTIFは大文字小文字を区別しません。案件IDの形式が「k-001」「K-001」混在で判定が緩い場合があります。=COUNTIF の代わりに =SUMPRODUCT(--(EXACT(A:A,A2))) で完全一致判定。
  • 重複検知列の参照範囲は列全体(A:A)にすると行追加に追従しますが、計算が重くなります。Excelテーブル化(Ctrl+T)で動的範囲化が推奨。
  • 重複行を削除する際は、必ずどちらを残すかのルール(最新日時優先、ID昇順優先など)を決めてから一括削除します。
  • ピボットで重複案件の合計を見ると、二重計上が顕在化します。COUNT > 1 の案件は手動でも確認の対象になります。

まとめ

同じ案件が二重に集計される原因は、重複キーによる検知の仕組みが管理表側にないことです。重複キーを決めてCOUNTIFで各行に重複件数を表示し、重複候補件数を常時可視化すれば、CSV取込ミスや手作業の二重入力を即検知できます。

次にやることは、対象ファイルで「重複の基準となるキー(案件IDなど)」を1つ決めることです。検知関数の設定はその後でも構いません。あわせて、件数の突合は集計前後の件数を比較する手順、合計の突合は元データ合計と突合する手順も参考になります。

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