• ベストアンサー

種類の数を数えたい

個数ではなく種類の数を数える関数を教えてください。 よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • maron--5
  • ベストアンサー率36% (321/877)
回答No.1

=COUNT(INDEX(1/(MATCH(A1:A10,A1:A10,)=ROW(A1:A10)),)) ★データが複数列にあっても可能です =SUMPRODUCT((A1:A10<>"")/COUNTIF(A1:A10,A1:A10&""))

noname#150256
質問者

お礼

ありがとうございます。

その他の回答 (3)

  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.4

#3です。 #3回答の前半を1発で求める。 初心者向けではないが、配列数式に興味があるのでそれを使ってみた。 A列  B列(参考) aa 1 bb 2 gg 3 aa cc 4 bb xx 5 yy 6 cc aa ff 7 ーー =SUM(IF(COUNTIF(OFFSET($A$2,0,0,ROW(A2:A12)-1,1),A2:A12)=1,1,0)) と入れてSHIFT+CTRL+ENTERを押す。配列数式。 結果 7

  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.3

学んでしまえば、なんと言うこと無いが、#1のような関数は、初心者には思いつかないだろう。 ーーー ストレートに出る方法ではないが それで作業列を使って A2:B7で A列  B列 aa 1 bb 2 gg 3 aa cc 4 bb B2の式は =IF(COUNTIF($A$2:A2,A2)=1,MAX($B$1:B1)+1,"") 下方向に式複写。 B列のMAXが種類数。 この考えは[ 「imogasi方式」の重要な前半部分の考え方。興味あればGoogleで「imogasi方式」で照会。 ーーー データーフィルターフィルタオプションの設定で、「重複するレコードは無視する」で操作すると、具体的に重複しないデータが作れる。 その数を関数で数える。

noname#150256
質問者

お礼

ありがとうございます。

  • gyouda1114
  • ベストアンサー率37% (499/1320)
回答No.2

タイトル行(列ラベル)を入れて表を作ります。 フィルタオプションで重複を無視して表示します subtotal関数(3:COUNTA)で、オートフィルタによる非表示セルを除く、セルの入力数を数える) 重複データを削除する-フィルタオプション http://www.relief.jp/itnote/archives/001525.php Excel関数-subtotal関数の使い方 http://exinfo.biz/func/func_subtotal.shtml 画像で A8に =SUBTOTAL(3,A2:A7)

noname#150256
質問者

お礼

ありがとうございます。

関連するQ&A