使い方 · Microsoft Excel

Excelで指定列を基準に重複行を削除する

Microsoft 365、Excel 2024/2021/2019/2016のデスクトップ版とExcel for the webで使える機能です。最初の一致行を残して後続行を削除するため、照合列を決めてコピー上で試します。

公開 · 更新 · FaultNote 編集方針

Excelで指定列を基準に重複行を削除するの流れ:受注一覧で「何を1件と数えるか」を決める、削除前に重複候補を見分ける、照合する列を指定して削除する、件数と残った行を確認する、誤って消した行を戻す、メール単独と複合キーの結果を比べる、隣の表と表示形式を確認する、結果から次の操作を選ぶ
この記事の手順・確認項目の一覧。実際のアプリ画面ではありません。

この記事が役立つ人・作業前の準備

  • 名簿や受注一覧の重複行を整理したい人
  • どの列が一致したら重複とみなすか決められる人

用意するもの

  • 元シートをコピーし、例として氏名・メール・部署を含む表を用意する
  • 残したい行が上になるよう更新日などで並べ替える

受注一覧で「何を1件と数えるか」を決める

受注番号・メール・商品・更新日の4列がある一覧を考えます。同じ人が別の商品を購入した行は、メールが同じでも別の受注です。この一覧をメールだけで重複削除すると、必要な購入履歴まで消します。受注を整理する目的なら受注番号、送付先を1人1件にする目的ならメール、同じ人の同じ商品を整理するならメールと商品というように、作業の目的からキーを決めます。1つのファイルに複数の目的を混ぜず、送付用一覧は元の受注表から別シートへ作ります。

同じ受注番号の行に異なる更新日があるなら、最新の行を残すために更新日を降順で並べます。このとき日付列だけではなく表全体を並べ替え、商品とメールの対応を崩さないようにします。処理前の行数を控え、消す予定のIDを数件記録してから削除します。結果の件数が合っていても、必要な列の内容が残っているかは別に確認します。

空欄のメールをキーにすると、未入力の別人を同じグループとして扱う可能性があります。空欄の行を別シートへ退避して確認し、判定できる行だけで処理する方法を取ります。名前が同じという理由だけで空欄を補完せず、確認できる社員番号や受注番号を優先します。削除した行と残した行の記録が必要な作業では、コピーした原表と結果表をIDで照合できる状態で保管します。

処理の担当者が変わる場合は、どの列を照合したかが分かるメモを結果シートへ残します。「重複削除済み」だけではメール単独なのか受注番号なのか分からず、次の担当者が別の目的で再び削除する可能性があります。名簿の人数と受注の件数は単位が違うため、処理後の件数を「一意の受注番号数」など具体的に記録します。

空白文字の整形はコピーの確認列で行い、元列をすぐに上書きしません。例えば見た目が同じメールが重複しない場合は、末尾スペースや入力の違いを確認します。整形後に件数が変わったら代表例を見て、意図した一致だけが増えているか判断します。表の表示形式や入力値を一度に変えず、変えた条件と結果を対応させて確認します。

  1. 1件の単位を受注・人・商品から決める
  2. 空欄キーを別に確認する
  3. 表全体を更新日の降順で並べる
  4. 代表IDと行数を記録する

削除前に重複候補を見分ける

表の中をクリックするだけではなく、重複を調べるメール列のデータセルを見出しを除いて選択します。[ホーム]>[条件付き書式]>[セルの強調表示ルール]>[重複する値]を選ぶと、例えば [email protected] が2行なら両方が着色されます。これは表示だけで削除しません。

  1. 見出しを除くメール列のデータセルを選ぶ
  2. 重複する値を着色する
  3. 残す行が先頭か確認する

照合する列を指定して削除する

表全体を選び[データ]>[重複の削除]を開きます。先頭行が見出しなら該当項目をオンにし、[すべて選択解除]後に「メール」だけをチェックして[OK]を押します。選んだ列が同じ行は、選ばなかった部署列も含め行全体が削除されます。

  1. 表全体を選択する
  2. データから重複の削除を開く
  3. 照合列だけをチェックしてOKを押す

件数と残った行を確認する

「1個の重複する値が見つかり削除され、4個の一意の値が残りました」などの結果を記録します。着色が消え、意図した [email protected] の先頭行が残ったことをフィルターで確認します。空白や余分な空白文字は別結果になることがあります。

  1. 結果ダイアログの件数を確認する
  2. 照合値で絞り込む
  3. 他列の必要情報が残ったか確認する

誤って消した行を戻す

ブックを閉じる前なら[元に戻す]またはCtrl+Zを使います。保存しただけではUndo履歴は消えません。ブックを閉じてUndo履歴を失った場合は、事前にコピーしたシートから復元します。アウトラインや小計がある範囲では重複削除を実行できないため、元構造を壊さずコピーへ値を貼って処理します。

  1. ブックを閉じる前にCtrl+Zで取り消す
  2. 閉じた後はコピーを参照する
  3. 照合列を修正して再実行する

メール単独と複合キーの結果を比べる

例えば、同じメールで部署が「営業」と「総務」の2行を作ります。メールだけを照合すれば1行が残り、メールと部署を照合すれば2行とも残る想定です。結果が異なるなら、チェックした列と対象範囲を見直します。

重複削除は情報の統合ではありません。片方に電話番号、もう片方に住所がある場合、残った行へ自動で集まりません。統合が必要なら削除前に確認表を作り、各列の採用値を決めます。

  1. コピー上でメール単独の結果を記録する
  2. Ctrl+Z後、メールと部署の組み合わせで試す
  3. 必要な他列の値を移してから本処理する

隣の表と表示形式を確認する

別表が横に並んでいるシートでは、1つの表だけを対象にします。削除対象範囲の外側は同じように動かないため、行位置だけで結び付けた別表と対応が崩れる可能性があります。処理後は行番号ではなくIDで照合します。

日付の表示形式が異なるセルは、内部値が同じでも重複判定が変わることがあります。表示形式をそろえたコピーで比較し、件数だけでなく代表的なIDの残り方を確認します。

  1. 対象表の境界を確認する
  2. 日付列の表示形式を統一して再確認する
  3. 隣接表はIDで対応を点検する

結果から次の操作を選ぶ

表は横にスクロールできます →

結果から次の操作を選ぶ
状態判断次の確認
同じメール、別受注番号受注番号をキーにすれば両方残す購入履歴の整理にメール単独を使わない
同じ受注番号、別更新日最新が上なら先頭を残す並べ替え後に他列の対応を確認
メールが空欄の複数行個人を判断できない削除前に別途確認

注意点・利用条件

  • 重複の削除は非表示化ではなくデータ削除です
  • 選択しない列も、重複と判定された行では一緒に削除されます

よくある質問

同じ氏名でも別人を消さない方法は?

氏名だけでなくメールや社員番号も照合列にし、その組み合わせが一致した行だけを重複とします。

全角・半角や末尾スペースも同じ扱いですか?

表示が似ていても空白などで別値になる場合があります。TRIM等で整形した確認列を作ってから判定します。

同じメールの最新行だけ残せますか?

更新日で表全体を降順に並べてからメールを照合すれば、最初にある行を残せます。ただし別受注を消してよい目的かを先に判断してください。

削除前後の記録は何を残しますか?

原表、対象範囲、照合列、並べ替え条件、処理前後の行数を残します。業務上の確認には、代表的なIDと他列の値が残ったことも記録します。

出典・確認日

情報確認日:。仕様・操作方法・価格などの確認に使用した出典を掲載しています。適用条件や現在の情報は各リンク先で確認してください。

関連する活用ガイド

関連するトラブルの対処法

使い方の一覧へ →