- ベストアンサー
エクセル 種類の個数をカウントする関数はありますか
エクセル2002を使用しています。 重複データはひとつの種類として、範囲内のデータの種類数を計算したいのですが、どのようにすべきでしょうか? この範囲内には、ところどころ空白セルがあります。 例 B列 3行 10 4行 11 5行 12 6行 7行 15 8行 9行 15 10行 18 これで、B3からB10の範囲の種類別のデータの数は5です。 これを関数で計算したいのです。 本当は対象データが多いので、とりあえず、ピボットテーブルをかけて、抽出されたデータの一覧から使用した行数を数えて正解の数はわかりましたが、こんな方法はエクセルらしくないですよね。 また、データが数値でなかった場合も、関数で求められるでしょうか? 例 B列 3行 鈴木 4行 鈴木 5行 佐藤 6行 7行 高橋 8行 9行 高橋 10行 野口 この場合は、鈴木・佐藤・高橋・野口 で、データの種類の個数は4です。 これを関数で求めたいのです。 よろしくお願いします。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
=SUMPRODUCT((B3:B10<>"")/COUNTIF(B3:B10,B3:B10&""))
その他の回答 (2)
- maron--5
- ベストアンサー率36% (321/877)
◆データが数値なら =COUNT(1/FREQUENCY(B3:B10,B3:B10)) =COUNT(1/FREQUENCY(B1:B100,B1:B100)) =COUNT(1/FREQUENCY(B:B,B:B)) ◆データが数値または文字列なら =COUNT(INDEX(1/(MATCH(B3:B10,B3:B10,)=ROW(B1:B100)),)) =COUNT(INDEX(1/(MATCH(B1:B100,B1:B100,)=ROW(B1:B100)),))
お礼
御礼が遅くなり大変申し訳ありません。 求めていた値を得ることが出来ました。 式をいれずに一発で出来る関数は無いのですよね。 ありがとうございました。
- zap35
- ベストアンサー率44% (1383/3079)
お礼
お礼が遅くなり大変申し訳ありません。 過去にも同じ質問がありましたね。すみませんでした。 参考になりました。 ありがとうございました。
お礼
御礼が遅くなり大変申し訳ありません。 いただいた式をあてはめても出来なかったので、とまどいましたが、 =SUMPRODUCT(((B3:B10<>"")/COUNTIF(B3:B10,B3:B10&""))) としたところ、上手く個数が得られました。 式をいれずに一発で出来る関数は無いのですよね。 これからは、これを活用しようと思います。 ありがとうございました。