- 公開日:
エクセルで同じ値を探す関数
エクセルを使用してデータを整理したり分析したりする際、同じ値を探すことはよくある作業です。しかし、同じ値を手動で探すのは手間がかかるだけでなく、見落としてしまうリスクもあります。
エクセルには、簡単に同じ値を探すことができる関数が存在します。
この記事では、その関数の使い方や活用方法について解説していきます。
COUNTIF関数
COUNTIF関数を使うことで、1つの表の中から同じ値がいくつあるのかを表示できます。
COUNTIF関数の詳細は以下の記事をご参照ください。
ExcelのCOUNTIF関数の使い方|条件に一致するデータの個数表示
同じ値がない場合は「1」、同じ値が2つある場合は「2」といったように数値化できます。
詳しい使い方は以下の通りです。
今回は上記の表を使って説明を行います。
表内には、「鈴木 次郎」と「田中 一郎」という同じ値のデータが混じっています。
早速COUNTIF関数を使って、同じ値のデータを割り出してみましょう。
確認用の列直下のセル(例:C3)に「=COUNTIF($B$3:$B$8,B3)」と入力し、Enterキーを押します。
COUNTIF関数の書式は「=COUNTIF(範囲, 検索条件)」です。検索条件に一致するセルの数を表示します。
今回は「B3:B8」内から同じ値を探したいため、上記のように入力しました。
このあと関数をコピーするため、範囲は必ず絶対参照にしてください。
関数を入力したセルの右下にあるフィルハンドルを選択し、関数をコピーしたいセル(例:C8)までドラッグします。
COUNTIF関数により、表内に同じ値がいくつあるのか表示されました。
上記の例だと、同じ値が存在する「鈴木 次郎」と「田中 一郎」のみ「2」と表示されています。
IF関数×COUNTIF関数
IF関数とCOUNTIF関数を組み合わせることで、同じ値が存在するデータには「重複」、そうでないデータには「◯」というように、自由に表示を変更することもできます。
IF関数とCOUNTIF関数の組み合わせについて詳しく知りたい場合は、以下の記事をご覧ください。
ExcelのCOUNTIF関数とIF関数を組みわせて重複をチェックする方法
もっと表を見やすくしたい場合におすすめです。詳しい方法は以下の通りです。
確認用の列直下のセル(例:C3)に「=IF(COUNTIF($B$3:$B$8,B3)>=2,"重複","◯")」と入力し、Enterキーを押します。
IF関数の書式は「=IF(論理式, [値が真の場合], [値が偽の場合]」です。指定した条件を満たすか満たさないかで、セルに表示する値を変更する関数です。
今回は、同じ値が存在する(重複データの数が2以上になる)場合は「重複」、そうでない場合は「◯」と表示するように指定しました。
関数を入力したセルの右下にあるフィルハンドルを選択し、関数をコピーしたいセル(例:C8)までドラッグします。
IF関数とCOUNTIF関数により、同じ値が存在するデータが一目で分かるようになりました。
上記の例だと、同じ値が存在する「鈴木 次郎」と「田中 一郎」のみ「重複」と表示されています。
MATCH関数
MATCH関数を使って、同じ値のデータを割り出す方法もあります。
MATCH関数を使った方法では、関数を入力したセルを「1」として、何番目に同じ値のデータがあるのかを特定できます。
以下の記事ではMATCH関数の使い方を解説しています。より詳しく知りたい場合の参考にしてください。
ExcelのMATCH関数の使い方|検索値の範囲内での相対的な位置を返す
MATCH関数で同じ値を探す方法は、以下の通りです。
確認用の列直下のセル(例:C3)に「=MATCH(B3,$B$3:$B$8,0)」と入力し、Enterキーを押します。
MATCH関数の書式は「=MATCH(検索値, 検索範囲, [照合の種類]」です。
照合の種類は、「1」が以下、「0」が完全一致、「-1」が以上となります。今回は一致する値を探したいため、0を指定しました。
このあと関数をコピーするため、範囲は必ず絶対参照にしてください。
関数を入力したセルの右下にあるフィルハンドルを選択し、関数をコピーしたいセル(例:C8)までドラッグします。
MATCH関数により、同じ値のデータには同じ数字が割り振られます。
「鈴木 次郎」には「2」、「田中 一郎」には「3」といったように、割り振られた数字を確認することで、何番目にあるデータと同じなのかを確認できます。
IF関数×ISERROR関数×VLOOKUP関数
2つある表のデータ比較をしたいときは、IF関数とISERROR関数とVLOOKUP関数を組み合わせた方法がおすすめです。
IF関数の詳細については以下の記事をご覧ください。
ExcelのIF関数の使い方|論理式の条件(IF文)によって処理を分岐
3つの関数を組み合わせて複数ある表から同じ値を探す方法については、以下の解説をご覧ください。
今回は上記の表を使って説明を行います。
「表A」に記載されている氏名と「表B」の氏名が一致しているかどうか、関数を使用して検証します。
確認用の列直下のセル(例:E3)に「=IF(ISERROR(VLOOKUP(D3,$B$3:$B$8,1,FALSE)),"×","◯")」と入力し、Enterキーを押します。
今回の関数の書式は「=IF(ISERROR(VLOOKUP(検索値,範囲,列番号, [検索方法])),[値が真の場合],[値が偽の場合])」です。
簡単に説明すると、「B3:B8」の範囲に「D3」のデータがあれば「◯」、なければ「×」と表示するように指定しました。
このあと関数をコピーするため、範囲は必ず絶対参照にしてください。
関数を入力したセルの右下にあるフィルハンドルを選択し、関数をコピーしたいセル(例:E6)までドラッグします。
関数により、「表A」に記載されている氏名と「表B」の氏名が一致しているかどうかが表示されました。
表Aに存在する「鈴木 次郎」と「田中 一郎」のみ、表Bで「◯」と表示されています。
エクセルで重複データをまとめる方法
同じ値をチェックするだけが目的ではなく、「重複しているデータ(同じ値のデータ)をまとめて、表をすっきりさせたい」という場合は、以下の記事でご紹介している方法も試してみてください。
関数を使う方法もありますが、使い方は非常に簡単ですのでご安心ください。