- 締切済み
名前の重複件数を省く方法
現在「=COUNTIF(B2:B24,"*")」という形で文字が入っているセルにの件数を数えさせるようになっているのですが、同じ名前が複数入っていた時に一つの名前として数えさせるようにするにはどうしたらよいのでしょうか?例えば・・・ キムラ タカシ キムラ タカシ サトウ フミコ アンドウ リョウコ ・・・の場合、キムラ タカシが重複しているので1件として数えるようにして合計3件というような答えを自動的に出してもらいたいと思っています。もしご存知の方がいらっしゃいましたら教えて下さい。よろしくお願いします。
- みんなの回答 (5)
- 専門家の回答
みんなの回答
- maron--5
- ベストアンサー率36% (321/877)
=COUNT(INDEX(1/(MATCH(A1:A100,A1:A100,)=ROW(A1:A100)),)) ★途中に空白行があっても、範囲を大きめに指定しても、OK
- imogasi
- ベストアンサー率27% (4737/17069)
>このような方法以外にも同じような結果を出せる方法がありましたら 既回答が定番なんです。ですから、それより簡単なのを期待するでしょうが、無理でしょう。非常に技巧的ですが、3件あるものは、それぞれの行では1/3,1/3,1/3と計算されて、合計は1になるのです。 4件でも同じです。 ーー より複雑なものを 例データ A1:A10(B列は参考に手作業で入れた) a 1 s 2 d 3 a d z 4 x 5 c 6 c g 7 上記以外、どこのセルでも良いが 式 =SUM(IF(COUNTIF(OFFSET($A$1,0,0,ROW(A1:A10),1),A1:A10)=1,1,)) と入れて、SHIFT,CTRL,ENTERキーを同時押しする。配列数式。 結果は 7 ーー 同じ考えで 上記データで第1行目に行挿入し(全体に下へ1行ずらし) C2に= IF(COUNTIF($A$2:A2,A2)=1,MAX($C$1:C1)+1,"") と入れてC11まで式を複写する。C11の7が答えです。
- mshr1962
- ベストアンサー率39% (7417/18945)
=SUMPRODUCT(1/COUNTIF(B2:B4,B2:B4&"")) ※範囲内に空白のセルがある場合1件としてカウントします。
- mu2011
- ベストアンサー率38% (1910/4994)
一例です。 =SUMPRODUCT(1/COUNTIF(B2:B24,B2:B24))
お礼
どうもありがとうございます。この方法を使うと望み通りの答えが出てきますね。もしあればなのですが、このような方法以外にも同じような結果を出せる方法がありましたら、教えて頂けると助かります。
- pbforce
- ベストアンサー率22% (379/1719)
B2から自分の行まで(例えばC5ならB5)を検索して、B5が何件あるかを表示する。 当然最初は1件と表示される。2回目は2件になる。 この件数の1をカウントすればご質問と同じ数字が作れます。
お礼
皆さんどうもご親切に回答して頂きありがとうございました。しかしながら、私はExcel以外の表計算ソフトを使っているので、皆様の方法では、検証する事が出来ませんでした。Excelでは、この方法を使うとうまくいくみたいですね。取りあえず、しばらくは、手動で結果を出して、ソフトウェアがバージョンアップなどしましたら、皆様の方法をもう一度試してみたいと思います。本当にご回答ありがとうございました。またよろしくお願いします。