今回の記事では、エクセルでデータを扱う場面でよくある、重複するデータの一括での抜き出し方と削除する方法を3つ解説します。
エクセルでデータを扱う上で、重複したデータだけを確認したい、削除したいという機会は良くあると思います。
そのようなときに100件程度のデータでしたら目視でも調べることができますが、1万件を超えるデータの場合目視で確認するだけで相当な時間がかかってしまいます。
そのようなときにエクセルでは「リボンメニュー→データタブ→重複の削除」を選択することで簡単に重複しているデータを削除することができます。
また、削除ではなく重複したデータを抽出だけしたい場合は条件付き書式かCOUNTIF関数を使うことで絞り込みを簡単に行うことができます。
それでは3つの方法について詳しく解説していきます。
1.重複しているデータを一括で削除する方法
最初にデータタブの重複の削除の機能を使って重複するデータを削除する方法を解説したいと思います。
今回は上のような表を用意しました。
この表はあるフルーツ屋の売り上げを一覧にしたものです。
1-1.重複しているデータを一括で削除する
フルーツの種類が重複している部分を試しに削除してみましょう。
重複データを削除したい表のセルを選択した状態で、「リボンメニュー→データタブ→重複の削除」を選択します。
すると上のウインドウが出るので、重複したデータを削除したい項目にチェックマークを入れます。
今回はフルーツの種類で重複を削除したいので「種類」にチェックを入れ、OKを押します。
9個のデータのうち、フルーツの種類に重複があった赤枠内の3つの項目が削除されました。
この方法の場合、一番上の行にある項目が残され、残りの項目が削除されます。
1-2.2つ以上の項目を指定して重複データを削除する
今度は2つ以上の項目を指定して重複の削除をしてみたいと思います。
先ほどの表に「日付と種類どちらも重複している」赤枠のデータを追加しました。
重複データを削除したい表のセルを選択した状態で、「リボンメニュー→データタブ→重複の削除」を選択します。
今度は「日付」と「種類」の項目にチェックマークを入れ、OKを押します。
「日付」と「種類」のどちらにも重複があった最後の行だけが削除されました。
1-3.重複の削除の注意点
この方法はとても簡単ですが、「どの項目が削除されたのか確認できない」ことと「自動的に下にあるデータが削除されてしまう」点が難点です。
万が一間違った項目を消してしまった場合には、Ctrl+Zキーを押すことで削除する前の状態に戻すことができます。
次の項目では、削除する前に重複しているデータを抽出する方法を解説します。
2.条件付き書式を使って重複データを抽出する
続いて重複するデータを条件付き書式を使って抽出する方法を解説します。
2-1.条件付き書式で重複データのセルの書式を変える
こちらもやり方はとても簡単です。
重複を抽出したい列を選択し(赤枠部分)、”リボンメニュー→ホームタブ→条件付き書式→セルの表示ルール→重複する値”(青枠部分)を選択します。
すると重複する値というウインドウが開くので、次の値を含むセルの書式設定の部分を”重複”値に設定し、書式を自分が見やすい表示に変更し、OKを押します。
この時に書式を変更すると、リアルタイムで表の色が変更されるので視覚的に作業をすることができます。
表の色が変わった部分が重複したデータになります。
後はフォントの色などでフィルターの絞り込みをすることで重複したデータのみを表示させることもできます。
少ないデータ量でしたらこのまま1行ずつ削除することもできますが、一括で削除したい場合は、上で解説した「重複の削除」の機能を使います。
↓フィルターの詳しい使い方はこちら↓
【初心者】データを効率よく絞り込み!フィルター機能とは?
3.COUNTIF関数を使って重複データを抽出する
最後にCOUNTIF関数を使って重複データを抽出する方法を解説します。
3-1.COUNTIF関数で重複している数を数える
COUNTIF関数とは指定条件に合うセルの数を数えることが出来る関数です。
=COUNTIF(範囲,検索条件)
の計算式で使用する事が出来ます。
↓COUNTIF関数についてはこちらの記事をお読みください↓
【初心者】COUNT関数の使い分けかたとは?
【実践】複数の条件に合うセルの数を数えるCOUNTIFS関数とは?
まずは重複かどうかを判断するための計算式を入れるための、重複と名前を付けた列を追加します。
そこに=COUNTIF(重複を判断したい列,重複を判断したい列のその行にあるセル)を指定したCOUNTIF関数を入力します。
重複を判断したい列は今回の場合B列になるので、D2セルに入力する計算式は、
=COUNTIF($B$2:$B$10,B2)
となります。
この時に重複を判断したい列の指定にはShift+4キーで「$(ドルマーク)」を付けて絶対参照をしてください。
↓絶対参照について詳しい記事はこちら↓
$(ドルマーク)の意味は?参照する列や行を固定する絶対参照とは?
このように入力することで、重複する項目がいくつあるかを表示することができ、2以上の数字になった項目は重複するデータがあるということになります。
2-2.IF関数で重複の有無を判定する
このままでも結果が「2以上」かどうかで重複データを判断することができますが、更に見やすくするためにIF関数を使ってもうひと手間加えたいと思います。
それではさらに見やすくするために、先ほどのCOUNTIF関数にIF関数を入れ子(ネスト)にします。
その際、入力する計算式は以下の通りです。
=IF(COUNTIF($B$2:$B$10,B2)>1,”あり”,”なし”)
重複するデータがある場合、COUNTIF関数で求めた数字が2以上になることを利用して、IF関数で数値が1を超えるか超えないかで分岐をさせます。
そのままフィルで表の一番下まで計算式を引っ張ることで重複がありかなしかを見やすく表示することができました。
↓IF関数についてはこちらをお読みください↓
【初心者】条件によって結果を分岐できる?IF関数の使い方
↓オートフィルの使い方はこちら↓
繰り返しの入力作業を一括で!オートフィルの使い方とは?
今回は重複するデータを一括で抽出する方法と削除する方法を解説しました。
どちらも使いどころが多く、作業時間の時短に繋がると思います。
条件付き書式と関数は手順は異なりますがどちらも重複データを抽出することができます。
自分が使いやすい方を覚えていただけたらと思います。
最後までお読みいただきありがとうございました。