• ベストアンサー

小数点以下の数字の出現

お尋ね致します。エクセル2013を使っています。 次の関数を作りました。 =IF(Q266="b",V266-U266,U266-V266)*100 すると、U,V列には小数点以下3桁までの数字しか入力していないのですが、この関数の欄には、小数点14桁くらいまでの変な数字が出現してしまいます。例えば、5のはずが4.99999999999875とかになります。 別の列にこの答えが5なら...というような関数を入れたのに、TRUE FALSEが正しく返って来ないので気が付きました。ここで作業が止まってしまい、困っています。 これはなぜなんでしょうか? 説明、伝わってますでしょうか? 補足が必要でしたらご教示ください。

noname#207972
noname#207972

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

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

こんなところが参考になるかと PC21 “達人”芳坂和行氏に学ぶ、エクセル「演算誤差」対策講座 http://pc.nikkeibp.co.jp/pc21/special/gosa/ MS Excel で浮動小数点演算の結果が正しくない場合がある http://support.microsoft.com/kb/78113/ja

noname#207972
質問者

お礼

勉強不足でした。ありがとうございました。

その他の回答 (2)

  • keithin
  • ベストアンサー率66% (5278/7940)
回答No.3

狙うと出せない浮動小数点誤差ですが、小数点以下を持った数字同士を四則演算すると現れます。 >5のはずが4.99999999999875とか =ROUND(IF(Q266="b",V266-U266,U266-V266)*100,3) などのように、適切な桁で丸めておきます。

noname#207972
質問者

お礼

お礼したはずなのに消えているようなので再度。。。 ありがとうございました。大変助かりました。

  • aokii
  • ベストアンサー率23% (5210/22062)
回答No.1

デジタルでの計算の精度限界による計算誤差です。

関連するQ&A

  • エクセルの小数点を消す

    とある割合をかけて算出する計算式の答えが、小数点以下8ケタくらいの数字になりました。 ROUNDとかの関数を使えば、四捨五入されるのは知っていたのですが、それを忘れてしまったため、全ての答えに小数点以下の数字が入ってしまいました。 答えから、小数点以下を消したい(できれば四捨五入して)のですが、1コ1コ消していくのしかないのでしょうか??

  • Excelで小数点以下の表示

    お世話になります。 分かる方がいましたら返信お願い致します。 Excelにて、テキストと数字の組み合わせによる表示の時、数字部分を小数点以下1桁に統一して表示したいのですが、うまくいきません。 例えばA1=5、とB1=1として(A1、B1は変数) C1にA1÷B1の答えを「答えは5.0」と表記したいのですが、 C1="答えは"&A1/B1 とすると「答えは5」となり、小数点以下1桁が表示されないです。 解決方法として考えたのが、書式設定で表示形式を小数点以下1桁に指定する、 またはROUND関数で小数点以下1桁に統一する方法ですが、 両方共「答えは5.0」ではなく「答えは5」となってしまいます。 またセルを2つ使ってC1に「答えは」、C2に「5.0」と表示なら可能ですが、 表の一部の為、見た目が崩れてしまって嫌です。 解決方法が分かる方がいましたら、よろしくお願い致します。

  • 小数点以下がある時だけ表示する方法(点なし)

    Office365使用しています。 Excel書式設定で 小数点以下が存在しない場合は小数点を表示せず 小数点以下がある場合のみ、小数点以下の数字と小数点を表示をしたく 下記、2つの書式設定の組み合わせで実現しております 書式設定1 【数式】=IF(RIGHT(TEXT(A1,"0.#"),1)=".",TRUE,FALSE) 【表示形式】数値(-1234) 書式設定2 【数式】=IF(RIGHT(TEXT(A1,"0.#"),1)=".",FALSE,TRUE) 【表示形式】#,##0.#;[赤]-#,##0.# 小数点第二位を表示させるには、どこをどのように修正すれば良いのでしょうか。 お詳しい方、ご教授お願い致します。 -------------------- こういったことを質問すると、私の文章が悪いのか 「そんなことも分からないのか」といった嫌味なコメントが届きます。 分からないのでお尋ねしているので、そこはどうかご容赦ください。

  • EXCEL 小数点以下の桁数を条件によって変えるには

    G列の書式設定を数値、小数点以下0桁に設定してあります D列にある特定の文字が入力された時だけ、小数点以下の桁数を1桁にしたいのですが、どのようにすればよいでしょうか? それと小数点以下0桁、1桁の数字の桁位置をそろえることはできますか

  • エクセルで小数点以下を切り捨てた答えを表示したい!

    こんにちは。宜しくお願いします。 OSは、WindowsNT、Excel97を使用しています。 エクセルで計算式を作った時、答えが小数点以下2ケタまで表示されたとします。それを小数点以下を切り捨てた数字で表示したい時、どうすればいいのか分かりません。 関数「ROUND DOWN」を使えば切り捨てが出来るという事は分かるのですが、出来れば、計算して答えが出るセルに直に切り捨てた答えが出るようにしたいのです。(つまり、小数点以下の答えが表示されるセルと、切り捨てた答えが表示されるセルを分けたくないのです) 拙い説明で申し訳有りませんが、不明な点などあれば補足致しますので、宜しくお願いします。

  • エクセル 小数点以下二桁と小数点以下0桁そのままで

    エクセル2013を使っています。 セルの書式設定の文字列にする方法以外で、教えてください。 小数点以下2桁と小数点以下なしで表示するセルを計算したいのですが、 文字列にすると、計算できないので困っています。 入力した数字そのまま表示し、計算するにはどうすれば良いですか?

  • 小数点以下の表示

    エクセルの問題集で、「データを小数点以下2桁の表示にしなさい」とあるのですが、答えは「113.0とか85.3」とかになっています。 これって小数点以下1桁ですよね。 問題が間違ってるのでしょうか?

  • 小数点以下の数字だけ小さいフォントで表示

    教えて下さい エクセルで少数点以下の桁、2まで表示するのですが 小数点以下の数字だけフォントを小さくして、小数点以下の数字だと言う事を分かりやすくしたいのですが方法はございますか? 例:  100.11を入力すると11だけ自動でフォントが小さくなる事です どうぞよろしくお願い致します

  • 有効数字3桁、小数点2位以内ってどゆ意味?

    有効数字3桁、小数点2位以内ってどういうことですか? 176kg→0.176t→0.18t だそうです。なんかよくわかりません。 176kgは176kgで終わりなのでは?この時点で有効数字3桁なのだから。小数点2位以内でもなりますよね?176.00でもあるわけだし。 1760kgならどうなりますか? 17.6kgならどうなりますか? 1.76kgならどうなりますか? 0.176kgならどうなりますか? 1760で有効数字3桁、、176×10?それで終わりでは?それともいちいち、1.76×10^3という狙いをつけるわけ?0.176×10^4にして小数点2位以内とかで0.18×10^4に四捨五入すんの?小数点ずらして10のなんとか乗にすれば無限にいかように表現できるのでは? 17.6も1.76も0.176も同じじゃないですか? 本当にこの断片的な情報では容易に反問しうる問いに答えになってません。歯数処理のためにこんなヘンテコなことやってます。 小数点動かして、都合の良いところで、人によっては都合の悪いところで、有効数字何桁、小数点何位以内とかわけわからんことやってます。というかkgからtに読み替える時点で既に荒唐無稽じゃね?1760000tなら1.76M tとかいくらでも数字圧縮できるでしょ?

  • 2桁と3桁の数字の小数点位置を合わせたい

    下方向に小数点2桁の数字を入力しているのですが、2桁と3桁の数字の小数点が ずれてしまいます。 位置を合わせることはできるのでしょうか?

専門家に質問してみよう