- 締切済み
EXCELでの四捨五入の後の計算方法
EXCELで小数点以下第何位までかを指定したり、ROUNDを使ったりして表記したのち、その第何位かまでで四捨五入された数値をそのまま次の計算に使いたいのですが、どうやら元の数値が使われているようです。四捨五入処理された数値が次の計算に使われる方法、どなたかご存知の方どうかご教示お願いします。
- yusamanman
- お礼率31% (312/995)
- Excel(エクセル)
- 回答数6
- ありがとう数3
- みんなの回答 (6)
- 専門家の回答
みんなの回答
- intin
- ベストアンサー率33% (8/24)
端数処理後の数値で計算したいのであれば、 roundやintなどの関数を使った端数処理が必要です。 逆に、見た目だけ端数処理をしておいて、 実際の計算では、端数処理前の数値を使いたいのであれば、 表示形式で指定します。
- imogasi
- ベストアンサー率27% (4737/17068)
>元の数値が使われているようです 根本的にエクセルの理解不足。 セルのデータで、( 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)
小数点以下第17位とかかかなり深いところで指定してませんでしょうか。 たとえば =ROUND((0.3-0.2-0.1),17) で本来は0なのですが、小数点以下17まで表示させる0より小さい数値が表示されます。 まるめ誤差なので、その場合上記の式だとROUNDの指定を16位までに変更するなどの処置で正常な0になります。
- mshr1962
- ベストアンサー率39% (7418/18948)
>小数点以下第何位までかを指定したり こちらの四捨五入は、見た目だけで実際の数値は元のままです。 >ROUNDを使ったりして表記した こちらの四捨五入は、結果をそのまま表示しています。 つまり、前の数値を計算に使う場合は、数式内でROUND関数を使わなければいけません。 後のROUND関数を使ったものは、そのままセル参照すればOKです。
- shintaro-2
- ベストアンサー率36% (2266/6244)
エクセルのオプションで表示桁数で計算というのが オプションの詳細設定の中にありますので、 それをオンにしてください。 ちなみに私はエクセル2013を使ってますが round()のセルを2倍すると、元の数値ではなくroundした数値の2倍になります。
お礼
ありがとうございました!!!
- panacon
- ベストアンサー率31% (214/679)
小数点以下の表示「→00」で調整した場合は、四捨五入して見せているだけなので、これを計算に使えば元の数字で計算されると思いますが、ROUND関数で四捨五入した数字は、計算結果が使われると思います。試しに、=ROUND(5/3,3)=1.67のセルを1倍したら、1.67で止まりましたよ。
お礼
ありがとうございました!!!
関連する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)
- ベストアンサー
- Excel(エクセル)
- 四捨五入の計算式は?
エクセルで、小数点3位を切り捨ての計算式が↓です。 =ROUNDDOWN((RC[-8]*RC[-6])+(RC[-4]*RC[-2]),2) 小数点3位を四捨五入する場合の計算式は?どのようにすればいいのでしょうか?
- ベストアンサー
- その他([技術者向] コンピューター)
- エクセルの表示形式で、10の桁で四捨五入した値を表示させるには?
エクセルの表で、数字を四捨五入する方法にはROUND関数がありますが、関数で変換すると値そのものが変わってしまいます。 値はそのままで四捨五入した数字で表す方法を教えてください。 小数や一桁の整数までの四捨五入であれば、セルの書式設定・表示形式を「数値」にして小数点以下の桁数を指定してやれば簡単ですが、10の桁以上で丸めて表示させる方法を探しています。 例えば、9876→9880と表示させる書式設定の方法です。 値は計算に使うので、ROUND関数で実際に丸めたくないのです。 ユーザ定義を組み合わせるなどで、うまくできませんか?
- ベストアンサー
- オフィス系ソフト
- 計算結果値そのものの切り捨て、四捨五入
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以上かどうかで判定、のような・・・) もしよろしければ、皆さんのお知恵をお貸しください。
- ベストアンサー
- C・C++・C#
お礼
ありがとうございました!!!