こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

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

セル範囲A1:A20に数式で数値が表示されています。
数式で=""が表示されるため、空白に見えるセルもあります。
この範囲から600から699までの数値がいくつあるか取得しようと思います。

=COUNTIF(A1:A20,">=600")-COUNTIF(A1:A20,">=700")

以上の関数でできるとは思いますが、ほかの関数があればご教示ください。
なお、オートフィルターは使用しないものとします。
エクセル2010です。

投稿日時 - 2015-01-15 13:46:53

QNo.8892247

困ってます

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

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

投稿日時 - 2015-01-15 14:16:44

お礼

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

投稿日時 - 2015-01-16 08:50:48

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(5)

ANo.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キーで確定する)

投稿日時 - 2015-01-15 17:06:41

お礼

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

投稿日時 - 2015-01-16 08:56:58

ANo.4

Excel2010なら COUNTIFS一択です。

> ほかの関数があればご教示ください。
遊びでいいなら

=FREQUENCY(A1:A20,{699,599})

投稿日時 - 2015-01-15 16:37:49

お礼

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

投稿日時 - 2015-01-16 08:55:31

ANo.3

No.2です。

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

投稿日時 - 2015-01-15 14:37:39

お礼

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

投稿日時 - 2015-01-16 08:54:15

ANo.2

こんにちは!

=COUNTIFS(A1:A20,">=600",A1:A20,"<=699")
とか
=SUMPRODUCT((A1:A20>=600)*(A1:A20<=699))
といった方法もあります。

※ 必ず整数が入るのであれば
<=699

<700
としても大丈夫です。m(_ _)m

投稿日時 - 2015-01-15 14:27:36

お礼

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

投稿日時 - 2015-01-16 08:52:03

あなたにオススメの質問