- ベストアンサー
重複しない値の件数を取得したい(Excel2002)
いつもお世話になっております。 Excel2002(OfficeXP)を使用しています。 A1からA100までいろいろな文字列が入っています。 そこで重複しない文字列の件数を取得したいのですが、 何か良い関数などございませんでしょうか? 具体的には以下のようなイメージです。 100 25 300 25 200 この場合に25が重複しているので、1つ除いて「4」件と取得したいのです。 何か良い方法はございませんか? A1からA100までは必ず値が入っております。 ぜひご回答よろしくお願いいたします。
- みんなの回答 (5)
- 専門家の回答
質問者が選んだベストアンサー
=SUMPRODUCT(1/COUNTIF(A1:A100,A1:A100))
その他の回答 (4)
B1: =1/COUNTIF(A$1:A$100,A1) B101: =SUM(B1:B100)
お礼
私の説明が悪くて、申し訳ございません。 作業用にセルを使用したくなかったのです。 ただとても参考になりました。 ありがとうございました。
- 某HN クロメート(Chromate)(@CoalTar)
- ベストアンサー率40% (705/1742)
もう一案(お遊びです) =SUM((FREQUENCY(A1:A100,A1:A100)>0)*1) 参考まで
お礼
FREQUENCY関数も知りませんでした。 教えていただき、勉強になりました。 ありがとうございました。
- Wendy02
- ベストアンサー率57% (3570/6232)
こんにちは。 MATCH関数を使えば、 =SUMPRODUCT((MATCH(A1:A100,A1:A100,0)=ROW(A1:A100))*1) COUNTIF でしたら、 =SUMPRODUCT((COUNTIF(OFFSET(A1,,,ROW(A1:A100)),A1:A100)=1)*1) となります。 あまり広い範囲は出来ませんが、こういう数式が可能です。
お礼
MATCHという関数もあるのですね。 全く知りませんでした。 とても勉強になりました。 ありがとうございました。
- soixante
- ベストアンサー率32% (401/1245)
1.B1セルに =COUNTIF($A$1:A1,A1) と入力し、B100まで引っ張る。 2.B101セルに、 =COUNTIF($B$1:$B$100,1) と入力 B101セルが求めたい数字となると思います。
お礼
ご回答ありがとうございます。 私の説明が悪かったのですが、 作業用にセルは使用したくなかったのです。 ただ、とても勉強になりました。 ご教示ありがとうございます。
お礼
とてもスマートですね。 この案を使用させて頂きました。 ありがとうございました。