Excelエクセルでデータの重複をチェックor削除する方法

今日は紹介するのは・・・

Excel(エクセル)

データに重複があるかをチェックする方法
データの重複を削除する方法

重複というのは「同じ内容のデータが2つ以上重なって存在してしまっている」ということです。

この方法を身につければ、データ処理上で重複が生じてはならない状況で必ず役立ちますよ!

Excel(エクセル)でデータに重複があるかチェックする・重複を削除する方法

重複があるかチェックする方法

データに重複があるかチェックする方法

データの重複をチェックする簡単な方法としては2あります。

  1. COUNTIF関数を使った方法
  2. VLOOKUP関数を使った方法

では、2つの方法を解説していきます。

COUNTIF関数を使うやり方

まずCOUNTIF関数を使って重複をチェックする方法です。

COUNTIFによって、検索値とするデータに一致するデータの個数をひとつひとつカウントすることによってデータが重複しているかどうかを識別できるわけです。

COUNTIFの公式

=COUNTIF ( 範囲, 検索条件)

範囲:検索をかけたい範囲
検索条件:検索したい条件

※検索条件には、数値・文字列・セル番号・数式・比較演算式が使える

重複をチェックする手順

例:番号Aのと番号Bのデータ群を比較して重複があるかどうかをチェックする(D列にチェック判定を表示させる)
重複をチェックするデータ例

番号Bのデータが番号Aの中にいくつあるかをデータごとにひとつひとつ見ていきます(例えば「セルC3のデータが範囲内にいくつあるかをカウントしていく」×セルC11まで処理していく)(関数はD3のものをコピーするのでひとつひとつ入力する必要はありません)

まずセルD3に関数を入力していく
=COUNTIF()の中に「範囲」「検索条件」を入れる

範囲:$A$3:$A$11
検索をかけたい範囲は「A3:A11」だが、関数をドラッグ&コピーしたときに範囲をずらしたくないので絶対参照にして「$A$3:$A$11」とする



検索条件:C3

検索したい条件はセルC3のデータなのでセル番号で指定して「C3」とする

これらを公式にあてはめると
=COUNTIF($A$3:$A$11,C3)
COUNTIF関数に引数を入力

セルD3に重複の数が表示される
一致データの個数が表示された

セルD3の関数をセルD11までオートフィルコピー(※オートフィルのやり方
オートフィル機能で関数コピー

全部のセルに重複数が表示される

この表示された数によって「重複があるかどうかを判別すればOK」

表示された数が・・・

  • 「0」なら➔ データに重複なし
  • 「1」なら➔ データに重複あり
    (1つ重複が見つかった)

データに重複があるかチェックする方法(関数計算の戻り値によって重複があるかを判別する)

もしここでデータが「2」「3」・・・と表示されたら、重複が2個・3個あるということです。

関数計算の戻り値が2以上だった場合

このようにCOUNTIF関数を使えば『検索値に一致するデータの個数を数える』ことで重複があるかどうかを簡単にチェックうすることができます。

COUNTIFは重複があるかないかはもちろんそのデータに重複が 「何個 あったのか」重複の数も把握することができるので一石二鳥です。

この記事を見ている人におすすめベストセラー

VLOOKUP関数を使うやり方

次は、VLOOKUP関数を使って重複をチェックする方法です。

VLOOKUPは、検索値に一致するデータ(もしくは一致したデータと同行のデータ)を引っぱってくることができるので「一致するデータがある=重複がある」という判別の仕方で重複をチェックできます。

VLOOKUP関数の公式

=VLOOKUP( 検索値, 範囲 ,列番号 ,検索方法)


検索値:検索したい値

範囲:検索をかけたい範囲

列番号:抽出したい列(範囲中の左から数えて何番目か)

検索方法:検索する形式(※)


※検索方法は以下2パターンから選択する
完全一致で検索したいなら:「0」または「FALSE」
近似値検索をしたいなら:「1」または「TRUE」と入力

重複をチェックする手順

例:番号Aのと番号Bのデータ群を比較して重複があるかどうかをチェックする(D列にチェック判定を表示させる)
重複をチェックするデータ例

番号Bのデータが番号Aの中にあるかないかを返ってくるデータによってひとつひとつ判別していく(例えば、「セルC3のデータが範囲内にあるかをチェックしていく」×セルC11まで行っていくかたち)(関数はコピーするのでひとつひとつ入力する必要はありません)

セルD3に関数を入力していく
=VLOOKUP()の中に「検索値」「範囲」「列番号」「検索方法」を入れていく

検索値:C3
検索したい条件はセルC3のデータなのでセル番号で指定して「C3」とする



範囲:$A$3:$A$11

検索をかけたい範囲は「A3:A11」だが、関数をドラッグ&コピーしたときに範囲をずらしたくないので絶対参照にして「$A$3:$A$11」とする



列番号:1

抽出したい列は範囲中の左から数えて1列目なので「1」とする



検索方法:0

検索する形式は完全一致でいいので「0」または「FALSE」とする

これらを公式にあてはめると
=VLOOKUP(C3,$A$3:$A$11,1,0)
関数に引数を入力

セルD3に戻り値が表示される
「#N/A」=エラーを意味する
➔ 指定の条件では一致するデータが見当たらなかったということです
戻り値が表示される

このセルD3の関数を下段までオートフィルコピー(※オートフィルのやり方関数をオートフィルコピー

全セルのデータが表示される

この戻り値(表示されたデータ)によって重複があるかないかを判別する

表示された戻り値が・・・

  • 「#N/A」なら➔ データに重複なし
  • 検索値と同じ値なら➔ データ重複あり(いくつ重複しているかはわからない)
    重複の判別方法

戻り値から重複を判別する

VLOOKUPを使った方法は「検索値に一致するデータを抽出している」のでCOUNTIF関数とは違い【重複がいくつあったかまでは判別することができません】

重複があるか、ないかさえがわかればOKというとき向けの方法です。

番外編:エラー値「#N/A」を別の文字列に変換して表示させる方法

VLOOKUP関数の重複チェックで表示される「#N/A」のエラー値。

先ほどの例では、これを間接的に重複ナシに判別していましたが「#N/A」を最初から別の文字に置き換えて表示させることも可能です。

それにはIFERROR関数(イフエラー関数)を使います。

IFERROR関数の公式

=IFERROR ( 値, エラーの場合の値)


値:エラー判定したい関数式や数式を入力

エラーの場合の値:エラーのときに表示させたい文字列や関数式、数式を入力

さきほどVLOOKUP関数で求めたデータをそのまま使って、エラー値を「重複なし」という文字で表示させるようにしてみたいと思います。

エラー値を別文字に置き換える方法

例)VLOOKUP関数を使って重複チェックする、またエラーの時は「重複なし」と表示させたい重複をチェックするデータ例

IFERROR関数を入力していく

値:VLOOKUP(C3,$A$3:$A$11,1,0)
エラー判定したい関数式は、そのまま重複をチェックする式を使って「VLOOKUP(C3,$A$3:$A$11,1,0)」とする


エラーの場合の値:"重複なし"
エラーのときに表示させたい文字列を重複なしなので「"」で囲って「"重複なし"」とする

公式にあてはめると以下になる=IFERROR(VLOOKUP(C3,$A$3:$A$11,1,0),"重複なし")
IFERRORの関数式を入力

エラー値となるところが「重複なし」と表示されるようになる
エラー値が指定した文字列で表示

あとは、全セルを処理したければ同じようにセルD3の関数式をオートフィルコピーするだけです(※オートフィルのやり方関数式をオートフィルでコピー

自分が使うだけのデータであれば「#N/A」でも十分ですが、第三者が目に通すものであればこんなひと工夫も気づかいとして素敵ですよね。

この記事を見ている人におすすめベストセラー

今回のまとめ

重複をチェックする2つの方法

例:C列とA列に重複があるかをチェックしたい玄人さん向け結論だけ説明

COUNTIFを使った方法

  1. C列のデータがA列に何個あるかデータ個数をみることで重複があるかをチェックする
  2. セルC3に関数を入力
    公式は「=COUNTIF ( 範囲, 検索条件)」なので=COUNT($A$3:$A$11,C3)となる
  3. セルC3の関数を下段までドラッグ&コピー
  4. 表示されたデータ個数によって2以上なら重複していると判断できる
VLOOKUP関数を使った方法

  1. C列のデータがA列にあるならその一致したデータ返すことで重複があるかをチェックする
  2. セルC3に関数を入力
    公式は「=VLOOKUP ( 検索値 ,範囲, 列番号, 検索方法)」なので=VLOOKUP(C3,$A$3:$A$11,1,0)となる
  3. セルC3の関数を下段までドラッグ&コピー
  4. 表示された内容が一致したデータなら重複アリ、エラー(#N/A)なら重複なしと判断できる

以上、今日はデータの重複をチェックする方法&削除する方法を紹介してきました。

COUNTIF関数・VLOOKUP関数の使い方をもっと知りたい!方は関連記事をチェックしてくださいね。