• ベストアンサー

エクセルで条件付き足し算

エクセルの使い方に関する質問です。 ある範囲にある複数のセルを足し算(もしくはSUM関数を使って合計)したいと思います。 そのとき、入っている数値が条件を満たしている(例えば0以上とか)セルの合計値を出す方法はあるでしょうか? マクロを使わずにすむ方法でお願いします。 <例> 1 -5 10 -5 20 31=0以上のものだけの合計値 ↑ この値の出し方

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

  • ベストアンサー
  • hisexc
  • ベストアンサー率40% (190/470)
回答No.2

SUMIF関数を使います。 例を使うと    A 1  1 2 -5 3 10 4 -5 5 20 6 31 とあるところで、0以上の条件に合う数値のみを 合計します。 =SUMIF(A1:A6,">=0",A1:A6) と入力してください。この式の意味はA1:A6の セル範囲を見て、>=0(>大なりはそのあとに来る 数値を超える条件を表し、=を添えるとその数値も 含むことを表します。)の条件に見合うものを拾い、 それに対応するA1:A6のセル範囲にある数値の 合計を表せ、という意味です。 2回目に入力したA1:A6が、例えばB1:B6に なっていれば、一つ隣のセルに入っている数値を 合計するわけです。例えば:    A   B 1  1   4 2 -5   3 3 10  -8 4 -5  10 5 20  -3 6 31  60 で、=SUMIF(A1:A6,">=0",A1:A6)の解は 1+10+20+31で62ですが、 =SUMIF(A1:A6,">=0",B1:B6)なら解は 4+(-8)+(-3)+60で53になります。

tg627
質問者

お礼

具体的な例を出して説明していただきありがとうございました。 別のセルの値も条件にして計算することも出来るのですね。

その他の回答 (2)

  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.3

配列数式では =SUM(IF(A1:A6>0,A1:A6,0)) といれて、SHIFT+CTRL+ENTERキーです。 式は{=SUM(IF(A1:A6>0,A1:A6,0))}と表示されます。 A1からA6のそれぞれの値に付いて、0より大きければ それ自身を、でなければ0を累積して足すと言う意味になります。

tg627
質問者

お礼

どうもありがとうございました。 無事に計算が出来ました。

  • BLUEPIXY
  • ベストアンサー率50% (3003/5914)
回答No.1

=SUMIF(セル範囲,">0",セル範囲) でできます

tg627
質問者

お礼

どうもありがとうございました。