• ベストアンサー

エクセルのROUND関数で・・

エクセルの関数を使って計算してるんですが、答えが合わないんです。 =ROUND($B31*$D31,2) $B31 には 3.900 $D31 には 3.55 二つをかけた値「13.845」の、少数第2位を四捨五入して返した値が、13.9 と出るんです。 少数第2位の 4 を四捨五入したら 13.8 が返されるはずですよね? 今日朝から一日悩んでます(+_+) パソコンには詳しくないので解り易くどなたか教えてください<m(__)m>

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

  • ベストアンサー
  • shippo
  • ベストアンサー率38% (1216/3175)
回答No.2

セルの小数点以下の桁数を「1」にしていませんか? これだと計算結果(質問文からすると、計算結果は小数点以下2位までの指定ですよね)の「13.85」をさらにセルの書式設定で小数点以下の桁数を「1」にしているため、計算結果から四捨五入され13.9と表示されてしまいます。 最初から小数点以下を一桁にしたいのであれば =ROUND($B31*$D31,1) にしてください。

kanon317
質問者

補足

アドバイス通りにしたらちゃんと出来ました。 ROUND関数の桁数の指定が間違えていたし、書式設定も仰るとおり1桁に指定してました。 桁数の指定は、その桁を四捨五入するという意味ではなく、四捨五入して表す桁数をいっているのですね「違うかな?」もしまた間違っていたら教えてください・・・ともあれ、今日朝からの悩みが解消できてめちゃ嬉しいです。 有難うございました\(◎o◎)/!

その他の回答 (3)

  • H2O0509
  • ベストアンサー率24% (28/115)
回答No.4

答えを表示するセルの設定が「小数点以下第一位まで」になっていませんか?エクセルのツールバーの(←0.0 0.00)をクリックして「小数点以下第二位まで」表示にすれば 13.85まで表示されますよ・・。

  • monanti
  • ベストアンサー率30% (12/40)
回答No.3

ROUND関数は2番目の引数に指定した『桁数』にします。 小数点以下第一位まで求めたいなら =ROUND($B31*$D31,1) になります。 今の状態はROUNDで「13.85」になったものがセルの書式によってさらに丸められていると思われます。 [書式]-[セル]で小数点以下の桁数が「1」になっていないか確認してみて下さい。

kanon317
質問者

補足

何もかも仰るとおりになってました。 すごく解りやすいアドバイスで大変助かりました。 有難うございました(^O^)

  • colocolo62
  • ベストアンサー率32% (1162/3624)
回答No.1

=ROUND($B31*$D31,2) では、小数第2位を四捨五入にならないです。 小数点以下を2桁にする四捨五入なので3桁目を四捨五入してます。 すると、「13.85」になりますね。 さらに、書式で小数点以下を1桁に表示するようになっていますと、「13.9」と表示されます。 #Excel2003でやってみました。

関連するQ&A