重複を除いた一意の件数(ユニークカウント)を求める方法は?
結論
SUMPRODUCT(1/COUNTIF(...))で重複を除いた件数を計算できます。2021以降はROWS(UNIQUE(...))も使用可能です。
詳しい解説
重複を除いた一意の件数を求めるには、`=SUMPRODUCT(1/COUNTIF(A2:A100, A2:A100))`という数式を使います。COUNTIF関数で各値が範囲内に何回出現するかを数え、その逆数(1/出現回数)の合計を取ることで重複を除いた件数になります。Excel 2021以降では、`=ROWS(UNIQUE(A2:A100))`のようにUNIQUE関数で一意の値を抽出してROWS関数で行数を数える方法もあり、こちらの方が直感的です。取引先数を数える際、同じ会社名が複数行あっても1社としてカウントする場合などに使用します。データの実数を把握する際に非常に有用です。
執筆・検証:田中 けんた|Excel歴15年・MOS資格保持
バージョン対応
| Excel 2016 | Excel 2019 | Excel 2021 | Excel 2024 | Microsoft 365 |
|---|---|---|---|---|
| 対応 | 対応 | UNIQUE関数も使用可能 | UNIQUE関数も使用可能 | UNIQUE関数も使用可能 |
実務での使用例
取引先の実数をカウント
売上データ(A列)に同じ会社名が複数行あっても、取引先の実数(一意の会社数)を正確に数える
=SUMPRODUCT(1/COUNTIF(A2:A100, A2:A100))UNIQUE関数を使った一意の件数(2021以降)
UNIQUE関数で重複を除いた一覧を作り、ROWS関数でその行数を数える。より直感的な記述
=ROWS(UNIQUE(A2:A100))