• ベストアンサー

Excel 複数条件に合致するデータの件数を返す関数は??

複数の条件に合致するデータの件数を出したいのですが、どうしたら良いでしょう?? データは 性別コード|年令コード 1|3 2|1 1|4 1|5 1|1 2|5 といった具合に入力されていて、 性別=1かつ年令=1 の件数はいくつか、というものを出したいのです。 配列数式で {=Count(If(A1:A10=1,B1:B10,""))} 試して見たんですが、一つの条件に合致する件数のみしかカウントできません。(例えば、性別=1の件数) 複数条件のカウントをするにはどうしたら良いでしょうか? ご存知の方がいらっしゃいましたら、教えて下さい。

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

  • ベストアンサー
  • maruru01
  • ベストアンサー率51% (1179/2272)
回答No.1

こんにちは。maruru01です。 配列数式なら、 {=COUNT(IF((A1:A10=1)*(B1:B10=1),1))} で、配列数式を使用しない場合は、 =SUMPRODUCT((A1:A10=1)*(B1:B10=1)) です。

kumikoara
質問者

お礼

ありがとうございます! maruru01さんには、いつもお世話になっているような気がします。 いつも、ありがとうございます♪ おかげさまで、データが取れました!たすかりました~☆ さて質問なのですが、上記のような複数の条件を付ける場合には「*」でつなげると良いということでしょうか? また、配列数式のif分の最後の「1」は、どう言う意味になるんでしょう?? もし、お時間がありましたら、教えていただけるとうれしいです。 どうぞ宜しくお願い致します。

その他の回答 (1)

  • maruru01
  • ベストアンサー率51% (1179/2272)
回答No.2

>上記のような複数の条件を付ける場合には >「*」でつなげると良いということでしょうか? 「*」で繋げるのはAND条件(論理積)の場合です。 OR条件(論理和)の場合は、「+」で繋げます。 OR条件(「A列が1」か「B列が1」の何れかが成立する) {=COUNT(IF((A1:A10=1)+(B1:B10=1),1))} =SUMPRODUCT(((A1:A10=1)+(B1:B10=1)>0)*1) となります。 >配列数式のif分の最後の「1」は、どう言う意味になるんでしょう COUNT関数は、範囲内の数値の個数を数えます。 したがって、数値であれば、「1」でなくても、何でもいいわけです。 ちなみに、IF関数の第2引数(TRUEの場合)を空白にすると、「0」が返されるので、 {=COUNT(IF((A1:A10=1)*(B1:B10=1),))} としても、OKです。 なお、IF関数の第3引数(FALSEの場合)を省略していますが、この場合は「FALSE」という論理値を返し、これは数値ではないのでカウントされません。

kumikoara
質問者

お礼

おー!!!! とても良く分かりましたぁ☆ こうやって、理屈を説明してもらえると、色々と応用できますね。 とぉっても勉強になりました。 ありがとうございました☆☆ また、質問すると思いますが、どうぞ宜しくお願い致します♪

関連するQ&A