• ベストアンサー

エクセル関数で600番台の数取得

セル範囲A1:A20に数式で数値が表示されています。 数式で=""が表示されるため、空白に見えるセルもあります。 この範囲から600から699までの数値がいくつあるか取得しようと思います。 =COUNTIF(A1:A20,">=600")-COUNTIF(A1:A20,">=700") 以上の関数でできるとは思いますが、ほかの関数があればご教示ください。 なお、オートフィルターは使用しないものとします。 エクセル2010です。

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

  • ベストアンサー
noname#222886
noname#222886
回答No.1

=SUMPRODUCT((A1:A20>=600)*(A1:A20<700))

emaxemax
質問者

お礼

早速ありがとうございます。 この場合でもSUMPRODUCT関数が使えるんですね。 助かりました。

その他の回答 (4)

  • bunjii
  • ベストアンサー率43% (3589/8249)
回答No.5

=COUNTIF(A1:A20,">=600")-COUNTIF(A1:A20,">=700") >以上の関数でできるとは思いますが、ほかの関数があればご教示ください。 Excel 2003以前のバージョンではそれで良いと思います。 Excel 2007以降のバージョンではCOUNTIFS関数が利用できますのでこちらが良いでしょう。 =COUNTIFS(A1:A20,">=600",A1:A20,"<700") 「600から699まで」ということはA1からA20の範囲で論理的にAND(A1:A20>=600,A1:A20<700)となるように設定すれば他の関数でも可能です。 =SUMPRODUCT((A1:A20>=600)*(A1:A20<700)) =SUM(INDEX((A1:A20>=600)*(A1:A20<700),0)) =SUM((A1:A20>=600)*(A1:A20<700)) (配列数式なのでCtrl+Shift+Enterキーで確定する)

emaxemax
質問者

お礼

勉強になりました。 ありがとうございます。

  • Chiquilin
  • ベストアンサー率30% (94/306)
回答No.4

Excel2010なら COUNTIFS一択です。 > ほかの関数があればご教示ください。 遊びでいいなら =FREQUENCY(A1:A20,{699,599})

emaxemax
質問者

お礼

こんな関数があるんですね、ありがとうございます。

  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.3

No.2です。 くどいようですが・・・ =SUMPRODUCT((INT(A1:A20/100)=6)*1) でも大丈夫だと思います。m(_ _)m

emaxemax
質問者

お礼

ありがとうございます。 たた、これは空白(="")の表示がある場合、VALUEエラーになってしまいます。

  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.2

こんにちは! =COUNTIFS(A1:A20,">=600",A1:A20,"<=699") とか =SUMPRODUCT((A1:A20>=600)*(A1:A20<=699)) といった方法もあります。 ※ 必ず整数が入るのであれば <=699 を <700 としても大丈夫です。m(_ _)m

emaxemax
質問者

お礼

新しくCOUNTIFSが出来たのを忘れていました。 ありがとうございます。

関連するQ&A

専門家に質問してみよう