Excel

【Excel】エクセルで種類を数える・カウント(重複を1つだけ:関数:何種類か:複数条件など)する方法

当サイトでは記事内に広告を含みます。

エクセルでデータを管理していると、「このリストには何種類のデータがあるのか」「重複を除いて数えたい」「条件に合う種類だけをカウントしたい」といった場面に遭遇することはありませんか?

この記事では【Excel】エクセルで種類を数える・カウント(重複を1つだけ:関数:何種類か:複数条件など)する方法について解説していきます。

ポイントは

・SUMPRODUCT関数とCOUNTIF関数で重複を1つだけカウント
・ピボットテーブルで種類を自動集計
・複数条件での種類カウント

です。

それでは詳しく見ていきましょう。

エクセルで種類を数える方法1【SUMPRODUCT関数とCOUNTIF関数で重複を1つだけカウント】

エクセルでデータの種類を数える最も確実な方法が、SUMPRODUCT関数とCOUNTIF関数を組み合わせることです。

この組み合わせを使えば、重複したデータを1つだけカウントし、リスト内に何種類のデータがあるかを正確に数えることができます

例えば、動物リストに「リス、ロバ、リス、キツネ、ロバ」とある場合、この方法を使えば「3種類」と正確にカウントできるでしょう。

解決方法

具体的な手順を見ていきましょう。

まず種類をカウントしたいデータ範囲を確認します。例えばB3:B11にデータが入っているとします。

空いているセルに以下の数式を入力します。

=SUMPRODUCT(1/COUNTIF(B3:B11,B3:B11))

この数式の仕組みは、各データがリスト内に何回出現するかをCOUNTIFで数え、その逆数(1/回数)を合計するというものです。

例えば「リス」が3回出現する場合、1/3が3回加算されて合計1になります。つまり、重複があっても1種類として正しくカウントされるわけです。

注意点として、この数式は空白セルがあるとエラーになることがあります。

 

空白セルを除外したい場合は、以下の数式を使用しましょう:

=SUMPRODUCT((B3:B11<>””)/COUNTIF(B3:B11,B3:B11&””))

この方法は大量のデータでも正確に種類をカウントできるため、実務でも頻繁に使われています。

 

また、バージョンによっては以下のシンプルな数式も使えます

=COUNTA(UNIQUE(B3:B11))

これはUNIQUE関数が使える新しいバージョンのExcelでのみ動作します。
UNIQUE関数は、指定した範囲から重複を除いた値の一覧を抽出する関数です。

 

エクセルで種類を数える方法2【ピボットテーブルで種類を自動集計】

数式を使わずに、視覚的にデータの種類を確認したい場合もあるでしょう

そんな時に役立つのが、ピボットテーブルを使った種類の集計方法です。

ピボットテーブルは自動的に重複を除外し、各種類の出現回数も同時に確認できるため、データ分析に非常に便利です。

解決方法

「挿入」タブをクリックして、種類をカウントしたいデータ範囲を選択します。

「ピボットテーブル」ボタンをクリックします。

ピボットテーブルの作成ダイアログが表示されたら、配置場所を選択して「OK」をクリックしましょう。

ピボットテーブルのフィールドリストが表示されたら、カウントしたい項目を「行」エリアにドラッグします。

同じ項目を「値」エリアにもドラッグすると、各種類の出現回数が表示されます。

 

以下のような情報が一目で分かるでしょう

– データ全体に何種類あるか(行数を数える)

– 各種類が何回出現するか(値の列を確認)

– どの種類が最も多いか(降順で並べ替え)

ピボットテーブルの下部に表示される「総計」の行数を数えれば、種類の総数が分かります。

また、ピボットテーブルは元データが更新されても「更新」ボタンをクリックするだけで最新の集計結果が表示されるため、動的なデータ分析にも適しています。

エクセルで種類を数える方法3【複数条件で種類をカウント】

単純に種類を数えるだけでなく、特定の条件に合致する種類だけをカウントしたい場合もあるでしょう。

そんな時には、複数条件を組み合わせた種類カウントの方法が必要です。

SUMPRODUCT関数を応用することで、条件に合うデータの種類だけを重複なくカウントすることができます

解決方法

B列に「動物名」、C列に「分類」が入っているサンプルデータがあります。

今回は「分類」が哺乳類の件数をカウントします。
特定の分類の動物種類だけを数えたい場合、以下の数式を使用します。

=SUMPRODUCT((C3:C12=”哺乳類”)/COUNTIFS(B3:B12,B3:B12,C3:C12,C3:C12))

この数式は、B列が「哺乳類」のデータだけを対象に、A列の動物名の種類をカウントします。

より複雑な条件を設定することも可能です。例えば、2つの条件を組み合わせる場合:

=SUMPRODUCT(((C3:C12=”哺乳類”)*(D3:D12=”野生”)) / COUNTIFS(B3:B12,B3:B12,C3:C12,C3:C12,D3:D12,D3:D12))

この数式は「哺乳類」かつ「野生」という2つの条件を満たす動物の種類を数えます。

以下のような応用もできるでしょう

– 日付範囲を指定して期間内の種類をカウント
– 数値条件を加えて一定範囲の種類を数える
– 複数分類を対象に種類を集計

条件を変更する場合は、数式内の”哺乳類”などの文字列を変更するか、セル参照に置き換えれば柔軟に対応できます。

COUNTIF関数を使った簡易的な種類カウント

より簡単な方法として、作業列を使った種類カウントもご紹介します。

データの隣の列に以下の数式を入力し、下方向にコピーします:

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

この数式は、そのデータが初めて出現する場合は「1」を返します。

その後、「1」の個数をCOUNTIF関数で数えれば、種類の総数が分かります:

=COUNTIF(B2:B100,1)

これは作業列が必要になりますが、仕組みが分かりやすく初心者にも理解しやすい方法です。

まとめ エクセルで種類のカウント(重複を除く:1つだけ・何種類か・複数条件)する方法

エクセルで種類を数える・カウントする方法をまとめると

– SUMPRODUCT関数とCOUNTIF関数:重複を1つだけカウントし、何種類あるかを正確に数える
– ピボットテーブル:視覚的にデータの種類を確認し、各種類の出現回数も同時に集計
– 複数条件でのカウント:SUMPRODUCT関数やCOUNTIFS関数で条件に合う種類だけを数える
– 作業列を使う方法:COUNTIF関数で初出を判定し、種類の総数を求める

これらの方法を状況に応じて使い分けていけば、ほとんどのケースでデータの種類カウント問題を解決できます。

特にSUMPRODUCT関数とCOUNTIF関数を組み合わせた方法は最も汎用性が高く正確ですので、まずこれを試すことをおすすめします。

ただし、大量のデータを扱う場合は、関数の計算負荷によってファイルが重くなることがあります。

必要に応じてピボットテーブルを活用したり、UNIQUE関数(新バージョン)を使ったりして、処理速度を改善していくことも大切でしょう。

エクセルの種類カウント機能を正しく理解して、効率的なデータ分析を実現していきましょう!