プロが教える店舗&オフィスのセキュリティ対策術

こんばんは。いつもお世話になっております。
今、表を作成しているのですが、例えば列に、
・インド
・インド
・インドネシア
・インドネシア
・カンボジア
とあるときに、データは5つですが国の種類は3つですよね、その3をだしたいのですが、どうしたら求められますでしょうか?
初歩的な質問で申し訳ないのですが、どなたかご教授お願いいたします。

A 回答 (3件)

こんにちは~



データが A2:A50にあるとして、
=COUNT(INDEX(1/(MATCH(A2:A50,A2:A50,0)=ROW(A1:A49)),0))

と入れてみてください( ↑をそのままコピー&ペーストしてください )

◆最後のほうの ROW(A1:A49) は指定範囲のセルの個数です。
A2:A50ならセルの個数は49個なので ROW(A1:A49) とします。
データが何行目から始まっていても必ず 1から始めてください。
A3:A100の範囲なら、ROW(A1:A98) のように。

=SUMPRODUCT(1/COUNTIF(A2:A50,A2:A50))

という比較的短い式でもできますが、
この式だと誤差が出るケースもあるのであまりオススメできません。
範囲内に空白セルが 1つでもあるとエラーになりますし…
    • good
    • 2
この回答へのお礼

早速の御回答、どうもありがとうございました。
無事できました!
また何かありましたら、よろしくおねがいいたします。

お礼日時:2006/01/12 23:10

=SUMPRODUCT(1/COUNTIF($A$1:$A$100,$A$1:$A$100&""))-(COUNTBLANK($A$1:$A$100)>0)


これなら範囲内にブランクがあってもエラーしないでデータの種類数をカウントします。
    • good
    • 6
この回答へのお礼

御回答どうもありがとうございました。
無事できました!
また何かありましたらよろしくお願いいたします。

お礼日時:2006/01/12 23:14

配列数式で


=SUM(IF(COUNTIF(OFFSET($A$1:$A$5,0,0,ROW(A1:A5),1),A1:A5)=1,1,0))
と入れてSHIFT+CTRL+ENTERキーを3つ同時押し。
$a$5,A5は最下終行(セル)で置き換えてください。
質問の例では結果は3
やっていることは、
COUNTIF($A$1:$A$5,A1)=1 なら1をそうでないなら0を合計に加える。
それをA1からA5まで行う。
という意味です。
上(A1)から見て、初出の行を勘定していることになる。
    • good
    • 1
この回答へのお礼

御回答どうもありがとうございました。
無事できました!
エクセルには色々なやり方があるのですね。私は初心者なのでまたここにお世話になると思いますが、何かありましたらよろしくお願いいたします。

お礼日時:2006/01/12 23:13

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!