この記事では、エクセルを使って項目の種類について、重複を除いた個数を数える方法について解説していきます。
この記事では具体的な数え方として次のような3つの方法を解説したいと思います。
それでは、実際のサンプルを使いながら詳細を見ていきましょう。
エクセルでの種類の個数を数える方法【重複を除外してからカウントする】
まずはあらかじめ重複しているデータを削除し、各種項目が1つのみのデータになるよう加工することで種類の数を数えていきましょう。
この場合は、種類の重複を削除してからCOUNTA関数を使用することで数えることが出来ます。
まず集計対象データの範囲、(以下の図ではねじから始まりくぎで終わるA1からA8を選択し、データタブにある「重複の削除」をクリックして実行します。
「重複の削除」ウィンドウが表示されるので「OK」ボタンをクリックします。
すると、重複している項目が削除され、何件残ったのか数えられたウィンドウが表示されます。
すでに個数が表示されていますが、セルに個数を記載したい場合は「OK」をクリックします。
すると、A列に記載されていた項目が、重複が削除され「ねじ、ぼると、くぎ」と各種類一つずつの列に変わります。
この各種類一つずつの項目が入力されているA1セルからA3セルを選択して、COUNTA関数を使うことで数を数えることが出来ます。
ここで使ったCOUNTA関数は、以下のような構文になります。
=COUNTA(数える範囲の開始セル:数える範囲の終了セル)
このように入力することで、数える範囲の空白でないセルの個数を数えることが出来ます。
入力する際に、=COUNTA()と入力した後、括弧の中をクリックして入力位置を移動した後、A1セルからA3セルをドラッグして選択することで、上記のようにA1:A3という文字を入力する事も出来ます。
エクセルでの種類の個数を数える方法【UNIQUE関数とCOUNTA関数を使用】
次にUNIQUE関数とCOUNTA関数の2つの関数を使って数える方法を解説します。
2つの関数を同時に使いますが、順を追って説明しますので大丈夫です難しくありません。
このUNIQUE関数が利用できるのはエクセルの2019より新しいバージョンのエクセルになります。
または、Office365をご利用の場合も利用可能です。
具体的には、数えた数を表示したいセルに
=COUNTA(UNIQUE(データのあるセル範囲))
と入力するだけで数えることが出来ます。
以下の図のようなリストの場合、=COUNTA(UNIQUE(A1:A8))となります。
先ほどと同じように、=COUNTA(UNIQUE())と入力した後、括弧の中をクリックして入力位置を移動した後、A1セルからA8セルをドラッグして選択することで、上記のようにA1:A8という文字を入力する事も出来ます。
この方法では2つの関数を使って2回の処理を行っています。
分解すると2つの関数になります。以下のCOUNTA、とUNIQUE、の2つですね。
エクセルの関数の処理では一番内側のかっこの中から処理がされます。
UNIQUE関数は「範囲の重複を削除して、一つずつの項目に変換する関数」です。
上の重複データの除外を関数で行っているとイメージするといいです。
つまり、この例の場合UNIQUE(A1:A8)の結果は「ねじ、ぼると、くぎ」となります。
これに対して先ほども出てきたCOUNTA関数を使います。
これにより=COUNTA(ねじ、ぼると、くぎ)となり、COUNTA関数の数を数えた結果の3が結果として表示されます。
これで関数を用いた種類のカウントが完了です。
エクセルでの種類の個数を数える方法【SUMPRODUCT関数とCOUNTIF関数を使用
UNIQUE関数が使用できないエクセルの2019より古いバージョンのエクセルの場合は、UNIQUE関数の代わりにSUM関数とCOUNTIF関数を組み合わせることで数えることが出来ます。
動画verとして以下の内容が近いので、併せてご確認くださいませ。
まず具体的な関数の式は次のようになります。
この解説は前の2つに比べて少し複雑な内容になってしまいます。
=SUM (1/COUNTIF(データのあるセル範囲, データのあるセル範囲))
この場合も、先ほどと同じように2つの関数を組み合わせることで数えています。
まずエクセルでは内側のかっこから計算されるのでした。
この式の場合、1/COUNTIF(A1:A8,A1:A8)ですね。よく見ると1をCOUNTIF関数の結果で割っていることが分かります。
さらに分解してまずはCOUNTIF(A1:A8,A1:A8)の結果を見てみます。
COUNTIF関数を使うと、
①1つ目の項目「ねじ」が選択した範囲にいくつあるか、=2個。
②2つ目の項目「ねじ」が選択した範囲にいくつあるか、=2個。
③3つ目の項目「ぼると」が選択した範囲にいくつあるか、=3個。
・・・
と数えて結果の列に入れます。結果はこの結果を並べて(2, 2, 3, 3, 3, 3, 3, 3)となります。
この式の場合、更にこのそれぞれの数字で1を割るので、(0.5、0.5、0.333・・・、0.333・・・、0.333・・・、0.333・・・、0.333・・・、0.333・・・、)となります。
今度はこの列に対してSUM関数を使います。
SUM関数はかっこの中の合計を計算しますので、0.5+0.5+0.333・・・+0.333・・・+0.333・・・+0.333・・・+0.333・・・+0.333・・・を計算することになります。
この結果3という結果が出るのですが、これは、
1を1つの種類の個数で割ってその個数だけ足しているため1種類に対して1となります。
この表でねじを例にすると、ねじはA1からA8の間に2個あります。
この時(1/2)+(1/2)=1、とねじという種類が1つあることを現す式となります。
次にぼるとです。ぼるとはA1からA8の間に3個あります。
3個あるので3で割ったものを3回足すので結果1になります。
くぎも同じです。3個あるので3で割ったものを3回足すので結果1になります。
ここまでで1つの種類が3つあることが分かります。
よって1+1+1=3となり、3種類という結果を出すことが出来ます。
ここではあまり考えず、公式として
=SUM (1/COUNTIF(データのあるセル範囲, データのあるセル範囲))
で「データのあるセル範囲の重複を除いた種類の数が計算できる」と覚えてしまっても良いかもしれません。
まとめ エクセルにて種類の個数を数える方法
以上、今回はエクセルでの種類の個数のカウントについて解説させて頂きました。