【Excel】重複データを確認して削除する方法|判定列の選び方とUNIQUE関数

【Excel】重複データを確認して削除する方法|判定列の選び方とUNIQUE関数
🛡️ 超解決

Excelで重複を整理する時は、「何が一致したら同じデータとみなすか」を先に決めます。氏名だけで削除すると同姓同名の別人を失い、IDだけでは更新履歴を消す場合があります。元のファイルを残してから、確認と削除を分けて進めます。

ADVERTISEMENT

1. 別ファイルへコピーして判定条件を決める

作業前に「名前を付けて保存」などで別のコピーを作ります。Ctrl+Sで現在のファイルを保存するだけでは、削除前の独立したバックアップにはなりません。共有ファイルでは、他の人の編集にも注意してください。

顧客一覧なら顧客ID、申込履歴ならIDと申込日など、表の1行が何を表すかを確認します。同じ顧客の異なる注文は重複ではありません。残す行を最新情報にしたい場合は、更新日や優先順位の扱いも決めておきます。

四行の例でIDのみなら二行、IDと日付なら三行が残る重複削除の比較
同じデータの比較図。重複の削除は、判定に使わない列も含めて対象範囲の行が削除されます。
※ お探しの解決策が見つからない場合は、こちらの「Excelトラブル完全解決データベース」で他のエラー原因や解決策をチェックしてみてください。

2. 条件付き書式で候補を確認する

確認する列を選び、「ホーム」→「条件付き書式」→「セルの強調表示ルール」→「重複する値」を使います。色が付くのは選択範囲で繰り返される値であり、複数列をまとめて選んだから行全体の組み合わせを判定するわけではありません。

IDと日付の組み合わせを確認する場合は、COUNTIFSなどで条件を指定します。例えばA列がID、B列が日付なら、C2に次を入力して下へコピーし、2以上の行を確認できます。

=COUNTIFS($A$2:$A$100,A2,$B$2:$B$100,B2)

前後の空白、全角・半角、数値と文字列、日付に含まれる時刻などでも判定が変わります。見た目が同じなのに一致しない場合は、元の値を確認します。IDの先頭ゼロを消すなど、意味のある差まで機械的に揃えないでください。

3. 重複の削除は表全体を対象にする

関連する列を含む表全体を選択して「データ」→「重複の削除」を開きます。先頭行が見出しかを確認し、同一判定に使う列だけにチェックを入れます。氏名列だけを選んで処理すると、隣の住所や電話番号との対応を崩すおそれがあります。

選択した判定列の組み合わせが同じ行は、基本的に先にある行が残ります。最新行を残したいなら、表全体を適切に並べ替えてから実行し、同じ更新日の行をどう扱うかも決めます。チェックしなかった列の値が異なっていても、削除される行の情報は失われます。

処理後は削除件数を記録し、代表的なIDで残った情報を確認します。誤りに気づいたら直ちに元に戻すか、作成したコピーへ戻ります。ファイルを閉じた後まで元に戻せると期待せず、保存前に確認を済ませます。

4. 元データを残すならUNIQUEで抽出する

対応するMicrosoft 365やExcel 2021以降などでは、空白の場所に=UNIQUE(A2:A100)と入力すると、値を重複なしで並べられます。複数列の組み合わせを抽出するなら、例えば=UNIQUE(A2:B100)のように範囲を指定します。

結果の展開先に別データがあると、スピルのエラーになります。また、A2:A100という固定範囲には101行目以降の追加分が自動では含まれません。データの増加に合わせて範囲を見直すか、テーブルの参照を使います。

UNIQUEは最新情報だけを自動で選ぶ機能ではありません。用途に合う方法はMicrosoftの一意の値と重複削除の説明で確認できます。

📊
Excelトラブル完全解決データベースこの記事以外にも、様々なエラー解決策をまとめています。困った時の逆引きに活用してください。
この記事の監修者
📈

超解決 Excel・Word研究班

企業のDX支援や業務効率化を専門とする技術者チーム。20年以上のExcel・Word運用改善実績に基づき、不具合の根本原因と最短の解決策を監修しています。ExcelとWordを使った「やりたいこと」「困っていること」「より便利な使い方」をクライアントの視点で丁寧に提供します。

🏆
超解決 Excel検定 あなたのExcel実務能力を3分で測定!【1級・2級・3級】