Excelで名簿、売上一覧、商品リストなどを扱っていると、同じデータが複数回入力されていることがあります。
重複したデータを放置すると、件数の集計や請求額の計算がずれたり、同じ相手に案内を送ったりする原因になります。
ただし、重複を削除するときは、単純に同じセルだけを消すのか、重複している行全体を消すのか、複数列の組み合わせで判定するのかを先に決めることが大切です。
Excelの重複削除は、基本的に最初に見つかった1件を残し、以降に一致したデータを削除する機能です。
削除前には対象範囲と見出し行の有無を確認し、必要なら元データをコピーしてから実行しましょう。
この記事では、重複データを1つ残す基本操作、行ごとに削除する方法、複数条件で重複を見分ける数式、削除前に確認する方法までを順番に解説します。
エクセルで重複データを1つ残して削除する方法
| 氏名 | 部署 | 会員番号 |
|---|---|---|
| 佐藤 | 営業 | A001 |
| 佐藤 | 営業 | A001 |
| 田中 | 総務 | A002 |
それではまず、同じデータを1件だけ残して重複行を削除する基本操作について解説していきます。
重複の削除ボタンで行全体を整理する操作
1行目に見出しがある表では、まず表内の任意のセルをクリックします。
続いてリボンのデータタブを開き、データツールグループにある「重複の削除」を選択します。
表示された画面で、どの列を基準に重複を判定するかを指定します。
氏名、部署、会員番号のすべてにチェックを入れた場合は、3列すべての内容が一致している行だけが重複として扱われます。
Excelは同じ組み合わせの先頭行を残し、2件目以降の行を削除します。
データが上から並んでいる順番によって残る行が決まるため、残したい情報が上側にあるかを確認してから実行することが重要です。
処理が終わると、削除した重複値の数と残った一意の値の数がメッセージで表示されます。
【操作のポイント】表の一部だけを選択すると、選択範囲だけが対象になります。関連する列を含めた表全体を対象にしましょう。
見出し行ありのチェックを正しく設定する考え方
重複の削除ダイアログには「先頭行をデータの見出しとして使用する」という項目があります。
1行目に氏名や部署などの項目名が入っている場合は、このチェックを入れます。
チェックを入れると、1行目は削除判定の対象ではなく見出しとして認識され、列名が選択項目に表示されます。
反対に、表の1行目から実データで始まっている場合にチェックを入れると、最初のデータが見出し扱いとなり、正しく判定できません。
見出し行の設定ミスは、残すべき先頭データを判定から外してしまう原因になります。
見出しのないデータを扱うときは、チェックを外して列A、列Bという表示を基準に対象列を選びます。
実行前に表の先頭行を目視し、項目名か実データかを確認する習慣が安全です。
削除後に元に戻すための準備
重複の削除は、不要と判断された行をワークシートから消す操作です。
実行直後であれば、クイックアクセスツールバーの元に戻す、またはCtrlキーとZキーで取り消せます。
しかし、保存して閉じた後や別の操作を多く行った後では、元の状態に戻しにくくなるかもしれません。
削除前には、シート見出しを右クリックして移動またはコピーを選び、作業用の複製シートを作る方法が便利です。
元データを残したまま処理できるため、削除結果の確認や再集計にも対応しやすくなります。
ファイル自体を複製して「重複削除前」と分かる名前で保存しておく方法も有効です。
特に顧客情報や経理データでは、削除より先にバックアップを作ることを基本にしましょう。
特定の列だけを基準に行ごとに消す方法
| 注文番号 | 商品名 | 金額 |
|---|---|---|
| 1001 | ノート | 500 |
| 1001 | ノート改 | 550 |
| 1002 | ペン | 200 |
続いては、特定の列の重複を基準にして、該当する行をまとめて削除する方法を確認していきます。
注文番号だけで重複を判定する設定
注文番号が同じなら同一注文として扱う場合は、重複の削除ダイアログで注文番号の列だけにチェックを入れます。
商品名や金額が異なっていても、注文番号が一致していれば2行目以降が削除対象になります。
たとえば、注文番号1001の行が2つあり、後の行だけ商品名や金額が修正されている場合でも、先にある行が残ります。
このため、最新の内容を残したい表では、日付列を確認して並べ替えを行ってから削除する必要があります。
どの列にチェックを入れたかが、行を削除する判定条件そのものです。
一意であるべき管理番号、社員番号、メールアドレスなどを基準にすると、実務で扱いやすい一覧になります。
【操作のポイント】注文番号だけを基準にする場合でも、削除されるのは注文番号セルだけではなく、その行全体です。
残したい行を先頭に並べ替える手順
重複の削除では、表の上にある最初のデータが残ります。
最新の更新日を残したい場合は、更新日列を新しい順に並べ替えてから操作します。
表内を選択してデータタブの並べ替えを開き、更新日を最優先キーに指定して降順を選びます。
その後、注文番号列だけを基準に重複を削除すれば、各注文番号のうち最も新しい更新日の行を残しやすくなります。
古い情報を残したいときは、昇順に並べ替える考え方です。
残す行の考え方は、並べ替えの順序で決まります。
新しいデータを残すなら日付を降順、古いデータを残すなら日付を昇順にしてから重複を削除します。
並べ替えの範囲を拡張する確認画面が出たときは、関連する列も含めて並べ替える選択をします。
空白セルを含む列での注意点
判定基準にした列に空白セルが複数ある場合、Excelは空白同士も同じ値として扱います。
そのため、注文番号が未入力の行が何件もある状態で注文番号だけを選ぶと、先頭の空白行以外が削除される可能性があります。
空白は未入力という意味であり、同じ注文を示す番号ではないことが多いため注意が必要です。
事前にフィルターを使って空白セルを確認し、必要なら番号を入力してから削除するか、空白を含まない範囲だけを操作対象にします。
空白を重複と見なしてよいかを判断してから実行することが、誤削除を防ぐポイントです。
ゼロ、ハイフン、空文字列を返す数式も見た目が似ていても別の扱いになるため、実データの状態を確認しましょう。
複数条件で重複データを削除する設定
| 氏名 | 商品 | 購入日 |
|---|---|---|
| 鈴木 | りんご | 2026/8/1 |
| 鈴木 | りんご | 2026/8/1 |
| 鈴木 | みかん | 2026/8/1 |
続いては、複数の列を組み合わせて同一データを判定する設定について解説していきます。
複数列の一致を条件にする考え方
氏名だけでは同姓同名の人を区別できず、商品名だけでは別の顧客の注文まで同一と判定されることがあります。
このような場合は、氏名、商品、購入日など、重複と見なすために必要な列を複数選びます。
3列にチェックを入れた場合、氏名と商品と購入日のすべてが一致した行だけが削除対象です。
氏名が同じでも商品が異なる行、購入日が異なる行は残ります。
複数条件の重複削除は、選択した項目がすべて一致したときだけ作動します。
これは、氏名と商品が同じで同日に二重登録された注文だけを整理したいケースに向いています。
【操作のポイント】判定条件を増やすほど削除対象は絞られます。必要以上に列を選ぶと、消したい重複が残ることがあります。
大文字小文字と表示形式の違い
Excelの重複の削除では、通常、大文字と小文字は同じ文字列として扱われます。
たとえばABCとabcは、同じデータと判定される可能性があります。
一方で、セル内に余分な半角スペースや全角スペースが入っていると、見た目が近くても別データとして残ることがあります。
「株式会社A」と「株式会社A 」のような末尾スペースは、目では見つけにくい違いです。
文字列の前後に余分なスペースがある場合は、別列でTRIM関数を使って整形してから重複を確認すると精度が上がります。
全角スペースや特殊な文字が混じるデータでは、置換機能やCLEAN関数も確認材料になります。
見た目ではなくセルに保存されている値で重複が判定される点を理解しておきましょう。
複数条件の削除前に件数を確認する方法
大量のデータを扱う場合は、いきなり削除せず、先に何件が重複しているかを確認すると安心です。
ホームタブの条件付き書式からセルの強調表示ルールを選び、重複する値を指定する方法があります。
ただし、この機能は基本的に単一列の確認に向いています。
複数列を組み合わせた重複を確認したいときは、補助列に複数の値を連結したキーを作る方法が分かりやすいでしょう。
たとえばD2セルに、A2、B2、C2の値を区切り文字で結合する数式を入力します。
=A2&”|”&B2&”|”&C2
1行目が見出しなら、D2から下方向へオートフィルで数式をコピーします。
この補助列を基準に重複を確認すれば、氏名、商品、購入日の組み合わせを1つのキーとして扱えます。
関数で重複を見つけてから削除する手順
| 会員番号 | 氏名 | 判定 |
|---|---|---|
| A001 | 佐藤 | 1 |
| A001 | 佐藤 | 2 |
| A002 | 田中 | 1 |
続いては、COUNTIF関数などで重複行を見える化してから削除する手順を確認していきます。
COUNTIF関数で2件目以降を判定する数式
会員番号がA列、氏名がB列にあり、1行目が見出しの場合を例にします。
C列を判定列として使い、C2セルに次の数式を入力します。
=COUNTIF($A$2:A2,A2)
この数式は、A2から現在の行までの範囲で、現在の会員番号が何回出ているかを数えます。
最初に出現した会員番号は1となり、同じ番号が2回目に現れた行は2、3回目は3です。
判定結果が2以上の行が、先頭のデータを除いた重複行になります。
数式をC2に入力したら、セル右下のフィルハンドルを下へドラッグしてオートフィルします。
【操作のポイント】COUNTIFの開始セルA2には絶対参照のドル記号を付け、終点のA2は行に合わせて変化する相対参照にします。
複数条件をCOUNTIFS関数で判定する数式
氏名がA列、商品名がB列、購入日がC列にある場合は、COUNTIFS関数を使うと組み合わせごとの出現回数を数えられます。
D2セルには次の数式を入力します。
=COUNTIFS($A$2:A2,A2,$B$2:B2,B2,$C$2:C2,C2)
この数式では、A列、B列、C列のそれぞれについて、先頭行から現在行までの範囲を指定しています。
3つの条件が同時に一致する最初の行は1となり、同じ組み合わせが次に現れた行は2になります。
単にA列だけを数えるCOUNTIFと違い、複数条件がそろった重複だけを見つけられる点が特徴です。
判定列で2以上にフィルターをかければ、削除候補だけを表示できます。
内容を確認して問題がなければ、表示された行を削除する流れです。
フィルターで確認してから行を削除する方法
関数で判定列を作った後は、ホームタブまたはデータタブからフィルターを設定します。
判定列の見出しに表示された下向き矢印をクリックし、数値フィルターで2以上を指定します。
これにより、先頭のデータを除いた重複候補だけが表示されます。
表示された行を確認してから、行番号を選択して削除すれば、意図しない情報を消すリスクを下げられます。
関数による判定は、削除前に対象を可視化できるため、大切なデータに特に向く方法です。
削除後にフィルターを解除し、判定列を不要なら消します。
集計用に判定列を残しておけば、以後の入力で重複が発生したときもすぐに確認できます。
重複削除で失敗しやすい原因と対処
| 確認項目 | よくある状態 | 対処 |
|---|---|---|
| 対象範囲 | 一部の列だけ選択 | 表全体を選択 |
| 空白 | 未入力が複数ある | 空白行を事前確認 |
続いては、重複削除がうまくいかないときに確認したい原因と対処法について解説していきます。
同じように見えるのに重複として消えない原因
見た目が同じ文字列でも、余分なスペース、改行、全角と半角の違いが含まれていると、Excelでは別の値として扱われる場合があります。
たとえばメールアドレスの末尾に空白が入っていると、画面上はほとんど区別できません。
LEN関数で文字数を比較したり、TRIM関数で前後の空白を整えたりすると違いを見つけやすくなります。
数値と文字列も注意が必要です。
00123という会員番号が、数値の123と文字列の00123で混在している場合は、形式を統一してから処理します。
重複削除の前にデータ形式をそろえることが、正確な名寄せにつながります。
【操作のポイント】見た目で判断しにくい文字の違いは、数式で検査するか、別列に整形済みデータを作って比較します。
削除したくない行まで消えた場合の対応
削除したくない行まで消えた場合は、まず直後なら元に戻す操作を実行します。
その後、どの列を基準にしたか、並べ替えの順序は適切だったか、空白を含んでいなかったかを確認します。
たとえば顧客番号だけを基準にすると、同一顧客の複数注文まで削除されることがあります。
このケースでは、顧客番号に注文日や注文番号を加えた複数条件に変更する必要があります。
削除条件は「同じと判断できる最小限の列」で作ります。
情報を失う可能性がある列を基準にするときは、関数とフィルターで候補を確認してから削除しましょう。
バックアップ用シートがあれば、削除前後の件数や内容を比較できます。
テーブル機能と重複削除を併用する考え方
日々追加される一覧は、範囲をテーブルとして設定しておくと管理しやすくなります。
表内を選択してCtrlキーとTキーを押し、先頭行を見出しとして使用する設定を確認するとテーブル化できます。
テーブルではフィルターが自動で付き、行の追加に合わせて書式や数式が広がります。
重複削除そのものは通常の範囲でも使えますが、更新を繰り返す一覧ではテーブル化と判定列の併用が便利です。
ただし、重複の削除を実行した時点で行は消えるため、履歴を残す必要がある場合は別シートへのコピーも検討しましょう。
まとめ エクセルで重複データを削除する方法
Excelで重複データを削除するときは、まず何を同じデータとみなすのかを決めることが出発点です。
表全体が同じ行を1つ残したい場合は、重複の削除で必要なすべての列を選択します。
会員番号や注文番号が同じ行を消したい場合は、その列だけを判定対象にします。
氏名、商品、日付などを組み合わせて判定したい場合は、複数列にチェックを入れるか、COUNTIFS関数で事前に確認しましょう。
最初に見つかった行が残るため、残したい情報が上に来るよう並べ替えることも重要です。
また、空白セル、余分なスペース、数値と文字列の混在は、想定外の削除や削除漏れにつながります。
大切なデータでは、作業用シートやファイルのコピーを作成し、関数とフィルターで削除候補を確認してから処理しましょう。
基本の重複の削除と、数式を使った確認方法を使い分ければ、名簿や売上データを安全かつ効率よく整理できます。