ヘルプの森~Excel・Access・Office全般ヘルプデスクサイト

No.002

重複データを調べる 《COUNTIF》

2003/2007/2010/2013/2016/2019/2021

たくさんの入力されたデータ。同じデータが重複入力されている可能性もあるかもしれません。
そのようなときに、重複データがあるかどうかを確認する方法をご紹介します。

今回重複データを関数で調べますが、調べる条件を、単一条件、複数条件の2つでご案内しようと思います。

<単一条件>

使用する関数は COUNTIF 関数(関数の分類: 統計)、少し工夫して使います。

例えばA列セルA2より、重複を調べるデータがあるとします。
関数を挿入するために1列用意し、COUNTIF 関数を挿入します。
引数の設定は次のようにA2ばかりで指定しますが、セル参照をよく見てください。

  =COUNTIF($A$2:A2,A2)

この式の引数[範囲] のセル範囲の参照で、最初のセルA2だけが絶対参照で番地が固定されています。
あとの参照は相対参照ですから、数式をコピーすれば番地が下にずれていきます。
とすると引数[範囲] は、数式がコピーされ下にいくほどセル範囲がのびていき、その範囲のなかで、範囲一番下のセルの内容がいくつあるか、という計算となっています。

重複データ

結果の説明をすると、答えが「1」と返ったデータは初めて出現したデータ、「2」以上で返ったデータは重複データです。
つまりこの式では、データの出現回数何回目かを求めていることになります。

さてまず最初は、単一条件での重複データを調べました。

<複数条件>

では、A列のデータとB列のデータを見て、両方同じ重複データを探したい場合です。

この場合は、新しい列にA列とB列のデータをつなげた結果を用意します。
セルの内容をつなげるには、&(アンパサンド)を使用するか、CONCAT 関数(関数の分類: 文字列操作) または CONCATENATE 関数(関数の分類: 文字列操作) を利用します。(後述)

  =A2&B2

そして、下記C列ののつなげたデータで単一条件のときと同様に、重複データを調べます。

重複データ

この結果を利用し、重複データを削除して一通りデータにしたい場合は、フィルターを使用するのが便利です。
COUNTIF の式の列で、1以外の結果のデータを抽出し、行削除を行い、フィルターを解除すると、一通りデータとなっています。

CONCAT 関数 と CONCATENATE 関数 について
CONCAT 関数は、Excel2016 より登場し、CONCATENATE 関数 と同じく、引数の内容をつなげた結果を返すことができます。
CONCATENATE 関数は、Excel2019 より一覧から外れ、非推奨関数となっています。
ただ、手入力で設定はできたり、昔入力された数式は問題ありません。
今後使用する場合は、CONCAT 関数を使用してください。

ヘルプmemo

<COUNTIF 関数>(関数の分類: 統計)
指定された範囲に含まれるセルのうち、条件に一致するセルの個数を返します。

数式:
=COUNTIF(範囲, 検索条件)
引数:
・[範囲] ...セルの個数を求める範囲を指定
・[検索条件] ...条件となる数値、式、文字列を指定
twitter hatena line pocket

関連ヘルプ

新規メールが開くハイパーリンクをまとめて設定するには 《HYPERLINK》
設定されているリンクを保ちながら、行と列を入れ替えて表を貼り付けたい 《配列数式/TRANSPOSE》
VLOOKUP関数の結果がエラー値の場合には空白で表示させる 《IFERROR・IF・ISERROR》
0を抜いた最小値を調べるには 《MIN・SMALL・COUNTIF・IF》
3つ以上ある範囲に条件分岐するには(多分岐) 《IF》
データに連番をふる、同じデータには同じ番号 《INDEX・MATCH・COUNTIF・MAX》
規則性がない空白セルを除いた行に連番をふるには 《IF・COUNTA・COUNTIFS》
複数条件を満たすデータの件数を求めるには 《COUNTIF・COUNTIFS・SUMPRODUCT》
奇数行の合計、偶数行の合計、n行おきの合計を求める 《配列数式/IF・SUM・MOD》
時刻を5分単位で切り上げまたは切り捨てて表示するには 《CEILING・FLOOR・ROUNDUP》
参照式の参照セルが移動しても固定されるようにしたい 《INDIRECT》
VLOOKUP関数で、複数テーブルから検索したい 《VLOOKUP・アンパサンド》
2つのデータを比較し、他方にない(両方にある)データを探す 《VLOOKUP・COUNTIF》
OR条件に当てはまるデータの合計を求める 《SUMIF・SUMIFS・SUMPRODUCT・DSUM》
日付を表す8桁の数値データを、6桁の和暦にしたい 《DATE・TEXT》