Excelで重複行を検出・削除する方法
最終更新:2026-05-22 · 作成:xlstools チーム
重複は無数の経路でスプレッドシートに紛れ込みます:DB エクスポートの再実行、CRM システムの統合、コピペミス、二重インポート。本ガイドでは2つの重複削除モード、適切なキー列の選び方、削除前のデータ検証方法を解説します。
重複検出の2つの方法
最重要の判断は「重複」がデータにとって何を意味するか。
1. 全行マッチ
両行ですべてのセルが一致する場合のみ重複。最も厳格 — 1列の余分な空白でも別行扱い。
用途:完全なバイト単位コピーのみ削除したい場合。同じ行を含むエクスポートの連結後によく使用。
2. キー列マッチ
「キー」列を1つ以上選択;これらの列値が一致する行は他のフィールドに関わらず重複扱い。
用途:論理主キー(email、order_id、employee_id)があり、他列に多少の差異(更新タイムスタンプ違い、書式バリエーション)があってもキーごとに1行にしたい場合。
ステップバイステップ
ステップ1 — Excelファイルをアップロード
.xlsx または .xls。ツールはブラウザ内で読み込み列リストを表示。
ステップ2 — 重複削除モードを選択
全行マッチとキー列マッチを切り替え。キー列モードを選んだらキー列も選択。
ステップ3 — どの重複を残すか選択
重複発見時、1行残し他を削除。あなたが決定:
- 最初の出現を残す(デフォルト)— 元の順序で最早の行を保持
- 最後の出現を残す— 最新行を保持(後行に完全データがある時に有用)
ステップ4 — プレビューを確認
ツールが重複行をハイライト表示、進行決定前に閲覧。確認:本当に重複に見えるか?それともキーが狭すぎたか?
ステップ5 — ダウンロード
1回の実行で2ファイル生成:
- ユニーク行 — 重複削除済み結果(あなたのクリーンデータセット)
- 重複行 — 削除されたもの(監査用に保存)
適切なキー列の選び方
ここで重複削除の大半が失敗。
| キー列選択 | 結果 |
|---|---|
email |
✅ 強 — メールは通常人ごとにユニーク |
order_id |
✅ 強 — 注文IDは定義上ユニーク |
employee_id + date |
✅ 時系列に良(社員ごと日ごと1行) |
first_name + last_name |
⚠️ 弱 — 2人の異なる「John Smith」が1行に潰される |
phone_number |
⚠️ 弱 — 書式漂流(+1-555-1234 vs 5551234)で偽陰性 |
timestamp_ms |
❌ 無用 — 粒度細かすぎ、重複が永遠に検出されない |
経験則:気にするエンティティを一意に識別する列を選び、単に「埋まっている」列ではない。
大文字小文字の区別
文字列比較はデフォルトで区別:"[email protected]" ≠ "[email protected]"。区別しない重複削除には:
- まずクリーナーで空白トリム(真犯人のことも多い)
- それでもケースが異なる場合、ソースでキー列を小文字化(Excel:
=LOWER(A2))後に重複削除
主な利用シーン
複数ソース顧客リストの整理
CRM、メールマーケティングツール、課金システムから顧客をインポート、各々に同じ顧客がわずかなバリエーション。email(小文字化後)で重複削除で人ごとに統一連絡先1件。
重複取引の削除
銀行エクスポートが重複日付範囲を再取得すると同じ取引を2度含むことがある。日付 + 金額 + 摘要で重複削除でクリーン台帳。
ダブル打刻タイムシートの発見
時給社員は時々2度打刻。給与計算期間のタイムシートを 社員ID + 日付で重複削除、廃棄前に「重複行」出力を確認 — 不正と honest mistake の両方を捕捉。
落とし穴と対処法
| 問題 | 原因 | 対処 |
|---|---|---|
| 「重複」検出されたが行が違って見える | キー列に空白や大文字小文字の差 | 先にクリーナー;キーの小文字化を検討 |
| 真の重複が検出されない | 細かすぎるキー(タイムスタンプ含むなど) | キーからタイムスタンプを外す;または比較で差異を理解 |
| 間違った行が残された | 「最初を残す」と「最後を残す」の選択ミス | 別設定で再実行 — 重複行ファイルが別ケースでどう残るかを示す |
| ファイルが大きくて重複削除不可 | 遅いブラウザで50万行超 | Firefox/Chrome に切替;他タブを閉じる。SheetJS 重複削除は O(n)、最終ダウンロードシリアライズがボトルネック |
廃棄前に必ず確認
二ファイル出力(ユニーク + 重複)は廃棄前監査のためにあります。ワークフロー:
- 重複削除実行
- 「重複行」ファイルを開く
- ランダムに10行をスポットチェック — 「ユニーク行」のどれかの真の重複に見えるか?
- はい → 「重複行」を安全に廃棄;いいえ → キー列が間違っている
プライバシーとセキュリティ
検出もエクスポートも全てブラウザ内で SheetJS により実行。PII(メール、社員ID、取引データ)はサーバーに到達しません。
関連ツール
- Excel重複削除ツール — 今すぐ重複削除
- Excelクリーナー — 重複削除前に空白クリーン
- 2つのExcelファイル比較 — 厳密でない「重複」を調査