• 締切済み

EXCELでの四捨五入の後の計算方法

EXCELで小数点以下第何位までかを指定したり、ROUNDを使ったりして表記したのち、その第何位かまでで四捨五入された数値をそのまま次の計算に使いたいのですが、どうやら元の数値が使われているようです。四捨五入処理された数値が次の計算に使われる方法、どなたかご存知の方どうかご教示お願いします。

みんなの回答

  • intin
  • ベストアンサー率33% (8/24)
回答No.6

端数処理後の数値で計算したいのであれば、 roundやintなどの関数を使った端数処理が必要です。 逆に、見た目だけ端数処理をしておいて、 実際の計算では、端数処理前の数値を使いたいのであれば、 表示形式で指定します。

参考URL:
http://www.excelspeedup.com/hasuu/
  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.5

>元の数値が使われているようです 根本的にエクセルの理解不足。 セルのデータで、( 1)セルの値と (2)表示形式を設定して見えている見てくれと (3)セルのコメントなどは、 記憶されている層が多分違い、エクセル関数は(1)のセルの値(自分以外の複数セルの値のときもある)を使って加工し、その式を入れたセルの値を返すものです。 この点(セル野値であって、見てくれではない点)を認識してないエクセル初心者が多い。 >(表示形式を適応して見えている見てくれを)、次の(エクセル関数の)計算の値として使うエクセル関数は無いと思う。 VBAでは、ユーザー関数を使うとTextプロパティを使って Function mitekure(a) x = a.Text mitekure = x End Function を使うと B列の(ユーザー定義)関数は =mitekure(A1) と入れて下方向に式を複写した A列   B列 12,345 12,345    ’3桁ごとカンマ設定 1993年9月23日 1993年9月23日 ’年月の表示を左記に設定 12.35 12.35           ’小数点以下2桁 ーーー セルの値は 数式バー部でわかる場合もある A1 12345 A2 34235   これは書式を数値にするとわかる(日付シリアル値) A3 12.34567 余り本にも解説してない点で、自己流なのですが。

  • kkkkkm
  • ベストアンサー率65% (1606/2443)
回答No.4

小数点以下第17位とかかかなり深いところで指定してませんでしょうか。 たとえば =ROUND((0.3-0.2-0.1),17) で本来は0なのですが、小数点以下17まで表示させる0より小さい数値が表示されます。 まるめ誤差なので、その場合上記の式だとROUNDの指定を16位までに変更するなどの処置で正常な0になります。

  • mshr1962
  • ベストアンサー率39% (7418/18948)
回答No.3

>小数点以下第何位までかを指定したり こちらの四捨五入は、見た目だけで実際の数値は元のままです。 >ROUNDを使ったりして表記した こちらの四捨五入は、結果をそのまま表示しています。 つまり、前の数値を計算に使う場合は、数式内でROUND関数を使わなければいけません。 後のROUND関数を使ったものは、そのままセル参照すればOKです。

yusamanman
質問者

お礼

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

  • shintaro-2
  • ベストアンサー率36% (2266/6244)
回答No.2

エクセルのオプションで表示桁数で計算というのが オプションの詳細設定の中にありますので、 それをオンにしてください。 ちなみに私はエクセル2013を使ってますが round()のセルを2倍すると、元の数値ではなくroundした数値の2倍になります。

yusamanman
質問者

お礼

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

  • panacon
  • ベストアンサー率31% (214/679)
回答No.1

小数点以下の表示「→00」で調整した場合は、四捨五入して見せているだけなので、これを計算に使えば元の数字で計算されると思いますが、ROUND関数で四捨五入した数字は、計算結果が使われると思います。試しに、=ROUND(5/3,3)=1.67のセルを1倍したら、1.67で止まりましたよ。

yusamanman
質問者

お礼

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

関連するQ&A

  • Access2000 小数第3位で四捨五入

    質問させていただきます。 Access2000で以下の計算式を作りました。 金額 = Round(重量 × 単価,2) これは「金額」を小数第3位で四捨五入します。 ところが以下の数値の場合、正しく計算してくれません。 764.00 = 0.479 × 1595 本当は 764.005 だから 小数第3位で四捨五入すると 764.01 になると思うのですが・・・。 ちなみに以下の値では・・・ 754.44 = 0.473 × 1595 (754.435だから小数第3位で正しく四捨五入されています)。 やり方が悪いのでしょうか?それとも他に正しく計算できる方法があるのでしょうか?

  • エクセルで四捨五入は可能ですか?

    エクセルについてなんですが、元データの数値をαとして、 α×110%の数値の一の位を四捨五入する計算式ってありますでしょうか? 例えば、「522」とすると、552×110%=574.2ですが、一の位を四捨五入して「570」としたいんです。 恐らく110%にする計算式と四捨五入の計算式がぶつかると思うのですが可能ですか???

  • 範囲指定した箇所の数値を一括で四捨五入したい

    EXCELのマクロで 範囲指定をしたセルの数値(数式ではなく、数字です)を一括で四捨五入(小数点第3位を四捨五入(小数点第2まで表示))した数値を置き換えるマクロを知りたいのですが、調べられずに困っています。 (roundで四捨五入して、それを値だけ貼り付ければ・・と言うことではなく、あくまでもマクロでの方法を教えてください) よろしくお願いいたします。 バージョンEXCEL2000

  • エクセルの四捨五入

    エクセルについて質問させて下さい。 エクセルで下記式を入力したところ、返された答えが「3」となりました。 「3.5」の小数点第1位を四捨五入なので「4」となるべきところなのにです。 理由が分かる方いましたら是非教えて下さい。 =ROUND((1.035-1)*100,0)

  • 四捨五入の計算式は?

    エクセルで、小数点3位を切り捨ての計算式が↓です。 =ROUNDDOWN((RC[-8]*RC[-6])+(RC[-4]*RC[-2]),2) 小数点3位を四捨五入する場合の計算式は?どのようにすればいいのでしょうか?

  • エクセルの表示形式で、10の桁で四捨五入した値を表示させるには?

    エクセルの表で、数字を四捨五入する方法にはROUND関数がありますが、関数で変換すると値そのものが変わってしまいます。 値はそのままで四捨五入した数字で表す方法を教えてください。 小数や一桁の整数までの四捨五入であれば、セルの書式設定・表示形式を「数値」にして小数点以下の桁数を指定してやれば簡単ですが、10の桁以上で丸めて表示させる方法を探しています。 例えば、9876→9880と表示させる書式設定の方法です。 値は計算に使うので、ROUND関数で実際に丸めたくないのです。 ユーザ定義を組み合わせるなどで、うまくできませんか?

  • エクセル 四捨五入??

    エクセルで計算しセルの書式設定で小数点3位までにしたばあい4位のは四捨五入されて繰り上がってしまうのでしょうか?

  • 計算結果値そのものの切り捨て、四捨五入

    EXCEL97で割り算の計算結果です。 例えば、5÷3=では、内部数値が、1.666666…となりますが 内部数値を (1)小数点以下2桁と切り捨てたい         →1.66になる (2)少数3桁目を四捨五入して小数点以下2桁としたい →1.67になる にするにはどうするのですか? 該当セルの見かけ表示の設定で(1)、または(2)にするのではなく、 値そのものを調整したいのです。

  • 割合(%)を出すとき、小数第何位まで計算すればいいか?また四捨五入について質問

    割合の計算で、86÷1337=0.0643・・・ ですが、小数点以下第二位まで四捨五入する場合、小数第四位まで求めますが、何故第四位まで求めるのでしょうか?第五位以上は求めなくて良いのでしょうか? また四捨五入についての質問なのですが、 40.45を小数点以下第一位まで四捨五入すると、40になりますが、このときに以下の疑問点があります。 四捨五入の過程で、小数第一位は4→5になりますが、この5を四捨五入すると、繰り上がると思うのですがなぜか、5が消えてしまいます。 それはなぜかと云えば、40の0は一の位で5は小数第一位だから、0のほうが位が大きい繰り上がらないと云う認識で大丈夫でしょうか?

  • 四捨五入について質問です。

    四捨五入について質問です。 GUIアプリのエディットコントロール画面から、任意の数値を入力させ、 小数点以下n桁で四捨五入をさせたいと考えています。 しかし、なかなかうまくいかないのが現状です。 試したのは以下の通りです。 ・atofを用い、数値を取り込み、下位n桁目を四捨五入 -> 当然だめです ・atoiを用い、数値を取り込み、10^nをかけて整数値にしてから四捨五入 -> 0.05と0.0499...の違いがつけられない やはり文字列処理しかないのでしょうか? (文字列を取り込み、小数点以下n文字目が5以上かどうかで判定、のような・・・) もしよろしければ、皆さんのお知恵をお貸しください。

専門家に質問してみよう