• ベストアンサー

エクセルのCOUNTIF関数とANDの組み合わせについて

お客さんのデータ集計で、D5からD100にある値が50以上かつ60未満の件数をだしたいのですがDCOUNTを使わずにCOUNTIFとANDを使って次のように入力しましたがTRUEと表示されるだけで、カウントできません。 =and(countif(d10:d100,">=50"),countif(d10:d100,"<60")) COUNTIFでは無理なのでしょうか? どなたかご指導頂けないでしょうか。

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

  • ベストアンサー
  • papayuka
  • ベストアンサー率45% (1388/3066)
回答No.2

=COUNTIF(D10:D100,">=50")-COUNTIF(D10:D100,">59") か =SUMPRODUCT((D10:D100>=50)*(D10:D100<60)) で良いと思います。

tomosato
質問者

お礼

早速のご指導ありがとうございました。 おかげさまで無事解決しました

その他の回答 (2)

  • hinebot
  • ベストアンサー率37% (1123/2963)
回答No.3

#1です。 >contif(d10:d100,">=50") とcountif(d10:d100,"<60")がTRUEかどうか判断して、両方TRUEで TRUEを返している訳ですから。 ここ言葉足らずだと思いましたので、下記のように訂正&追加します。 contif(d10:d100,">=50") とcountif(d10:d100,"<60")がTRUEかどうか判断して、両方TRUEなので、AND関数がTRUEを返している訳ですから。 AND関数はTRUEかFALSEしか返しません。

tomosato
質問者

お礼

とても詳しい説明ありがとうございました。大変参考になりました。

  • hinebot
  • ベストアンサー率37% (1123/2963)
回答No.1

=and(countif(d10:d100,">=50"),countif(d10:d100,"<60")) この式では確かに TRUE と返ってくるだけですね。 contif(d10:d100,">=50") とcountif(d10:d100,"<60")がTRUEかどうか判断して、両方TRUEで TRUEを返している訳ですから。 この場合、ちょっと工夫が必要です。 =countif(d10:d100,"<60")-countif(d10:d100,"<50") としてください。 60未満の数から50未満の数を引くことによって、 50以上60未満の数を出します。