• ベストアンサー

エクセルで四捨五入した値を計算

エクセルでダイエット記録表を作成して肥満度指数(BMI)を算出してます。計算式はエラー表示を出さないようにIFERROR関数を使用しています。値は小数点第2位四捨五入で算出しており、その四捨五入した値に対してさらに計算し四捨五入したいのです。 A1:体重、A2:身長、A3:BMI、A4:目標BMI といった感じです。 例えばA1:86.0、A2:182.0ですとA3:BMI 25.96なので四捨五入して26.0と表示させています。その26.0の値に対して0.96掛けて24.96→25.0と四捨五入表示させたいのです。しかしA3:26.0ではなく実際25.96に対して0.96掛けてしまうため24.92→24.9と表示してしまうのです。 この記録表は社内で回付するためエラー表示は避けたいのでどなたかいい解決方法を早急にお願い致します。!!

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

  • ベストアンサー
  • mshr1962
  • ベストアンサー率39% (7417/18945)
回答No.6

現状の式を変えたくないなら、 「ツール」「オプション」「計算方法」タブで「表示桁数で計算する」にチェックする。 そうでないなら、他の方の回答通り A3=ROUND(A1/(A2/100)^2,1) A4=ROUND(A3*0.96,1) とする。

Rush93
質問者

お礼

ROUND関数でいけました。色々と勉強になりました。

その他の回答 (5)

回答No.5

こんにちは。 A3 セルでは表示が26.0となっていても実際の値は25.96であるため、その様になっているのではないでしょうか。 A3セルで、ROUND関数を使い、 =ROUND(A1/A2^2,1) としておけばうまく行きませんか?

Rush93
質問者

お礼

ROUND関数でいけました。ありがとうございました。

回答No.4

A3を、表示を四捨五入値にするのではなく、ROUND関数を使って、四捨五入した値にしてやればいいのではないでしょうか。 と書いているうちに、他の人が既に回答していますね。 でも、複数回の計算を行う場合には、最後に四捨五入した方が誤差が増幅されないのでいいのでは?(何度も四捨五入すると、どんどん誤差が増幅されます。)

Rush93
質問者

お礼

アドバイスありがとうございました。勉強になります。

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

表示の設定ではなく実際に値を四捨五入するには round関数を使います。 小数点の位置で四捨五入するには、 round(値,0)とします。

Rush93
質問者

お礼

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

  • handomari
  • ベストアンサー率47% (83/174)
回答No.2

もしかして、表示形式で桁数を指定することによって四捨五入をしていませんか? きちんと、ROUND関数で四捨五入すれば、その時点で端数はなくなり、その値をさらに計算しても大丈夫です。

Rush93
質問者

お礼

できました。さらに値を計算しても大丈夫でした。ありがとうございました。

回答No.1

A3の式を =ROUND(A1/(A2/100)^2,1) としてください。 ROUNDは四捨五入する関数です。 ROUND(<式>,<残す小数点以下の桁数>) の形で使います。

Rush93
質問者

お礼

ありがとうございました。助かりました!

関連するQ&A