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

回答受付中の質問

計算結果がマイナスとなった場合、0表示にする

Excel2007利用です。
計算結果がマイナスとなった場合、0表示にするのはMax関数を使いますが、計算結果が正数となった場合、0表示にする関数と式の例を教えてください。よろしくお願いいたします。

Excel2007です。

投稿日時 - 2018-05-12 17:34:51

QNo.9497728

困ってます

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

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

回答(4)

ANo.4

>これはA1がマイナスの場合には通用しない式ということになります。
あなたが想定している計算式を具体的に提示して頂ければ疑問が解ける回答をしたいと思います。

>MIN関数の結果は、0のみであり、後者の回答がマイナスとなる式(つまりプラスマイナスの式の場合)には通用しないという特徴があるということでよいですよね?
「後者の回答がマイナスとなる式(つまりプラスマイナスの式の場合)」と言う計算式を具体的に提示して頂けませんか?
私が提示した計算式は仮に「このような計算式と0を比較してどちらが小さいか」で計算結果が0より大きければ0が、計算結果が0より小さければ計算結果が返ります。
A1に10、B1に5のときを想定してみます。
=MIN(A1-B1,0) → MIN(10-5,0) → MIN(5,0) → 0
=MIN(B1-A1,0) → MIN(5-10,0) → MIN(-5,0) → -5

A1に-10、B1に-5のときを想定してみます。
=MIN(A1*B1,0) → MIN((-10)*(-5),0) → MIN(50,0) → 0

複数の計算結果を0と比較するときは1つずつ比較しないと目的の結果を得られないでしょう。

投稿日時 - 2018-05-13 12:59:00

お礼

理解しました。ありがとうございます。

投稿日時 - 2018-05-13 16:34:09

ANo.3

あの・・・セルの書式設定で「表示だけ」なら簡単にできますが?

セルで右クリック「セルの書式設定」「表示形式」タブを選び
「ユーザー定義」を指定して

"0";-0;0;@

とすれば、結果が正だとゼロとして表示されます。同じく

0;"0";0;@

とすれば、結果が負だとゼロで表示されます。

ただしどちらの場合も、関数などでセル内容を参照すれば
元の「正」「負」の値が出てきます。セルの表示上だけ
強制的にゼロになっているだけです。

なぜ、そうなるかはこちらを
http://www.relief.jp/docs/000413.html

投稿日時 - 2018-05-13 00:05:42

お礼

ご回答ありがとうございます。

>セルの表示上だけ強制的にゼロになっているだけです。

なので、関数式を教えてもらいましたがこちらも参考にいたします。

投稿日時 - 2018-05-13 16:35:24

ANo.2

MIN関数を使って下さい。
=MIN(A1*B1,0)
A1に5、B1に10
=MIN(A1*B1,0) → MIN(5*10,0) → MIN(50,0) → 0
A1が-5、B1が10
=MIN(A1*B1,0) → MIN(-5*10,0) → MIN(-50,0) → -50

投稿日時 - 2018-05-12 18:24:35

補足

ご回答ありがとうございます。

A2に
=MIN(A1*B1,0)
を入れて試したのですが、
> A1に5、B1に10
の場合は確かに0になりましたが
> A1が-5、B1が10
もご回答のとおり-50になりました。

これはA1がマイナスの場合には通用しない式ということになります。

MIN関数の結果は、0のみであり、後者の回答がマイナスとなる式(つまりプラスマイナスの式の場合)には通用しないという特徴があるということでよいですよね?

投稿日時 - 2018-05-12 20:32:00

ANo.1

 
=if(計算式<0,0,計算式)
これで計算結果がマイナスの場合は「0」、0以上の場合はそのまま表示されます
 

投稿日時 - 2018-05-12 17:39:40

お礼

ご回答ありがとうございます。

>0以上の場合はそのまま表示されます

0しか不可ということだとですね。

投稿日時 - 2018-05-12 20:32:51