• ベストアンサー

「Excelには演算誤差が出る仕様があります」

と記事で見たのですが これはエクセルの計算式が狂う場合がある という意味ですか? これだったら電卓を使った方が良いのでしょうか?

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

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

>これはエクセルの計算式が狂う場合がある >という意味ですか? イメージとしては、 0.1 という数値を入れているつもりが、 ・0.1000000000000000137 ・0.0999999999999999982 というように微妙にずれた数値になってしまっている可能性がある、ということです。 このような多少のずれが悪影響を及ぼすような計算式の場合には「計算式が狂う」ように感じることになります。 例えば、 A1セルに「0.1」、B1セルに「0.1」と入れていて「if(A1=B1, ... , ...)」というような計算式を入れる場合に、誤差の影響で「一致」していないと判定される場合があります。 このような意味で「計算式が狂う」ということはあり得ます。 逆に、上で書いた程度のわずかなずれが気にならないのであれば、実用上は問題ありません。 例えば、普通に四則演算の計算をしたいというだけであれば、演算誤差が問題になることは、ほぼないはずです。 >これだったら電卓を使った方が良いのでしょうか? 電卓を使ってできる程度の計算であれば、エクセルでも支障はないと思いますよ。

参考URL:
http://www.excelspeedup.com/syousuugosa/
rdyyfifwj
質問者

お礼

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

その他の回答 (4)

  • bunjii
  • ベストアンサー率43% (3589/8248)
回答No.5

>これはエクセルの計算式が狂う場合がある >という意味ですか? 違います。 「計算結果が予想外になることがある」と言うことです。 整数の場合は計算誤差が生じないことになっているようですが浮動小数点演算を行ったときは微小の誤差が発生することが常識になっています。 Excelの場合は計算結果を有効桁数の範囲に四捨五入して表示しますので微小誤差は表面化しません。 浮動小数点演算の結果との比較を行ったときにセル上の表示値が同じでも「FALSE」が帰ることを経験しています。 これを回避するにはROUND関数で微小誤差を除去します。 =IF(A1=B1,1,0) → =IF(ROUND(A1,[桁数])=ROUND(B1,[桁数]),1,0) 左の数式で期待外れの結果であっても右の数式では期待通りに処理されます。

rdyyfifwj
質問者

お礼

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

  • msMike
  • ベストアンサー率20% (363/1775)
回答No.4

》 …と記事で見たのですが 「Excelには演算誤差が出る仕様があります」という記事を何処で? それホントに本当ですか?まさかMSではないですよね? どういう人が「演算誤差が出る」のを「仕様」とホザクのか、興味があります。

rdyyfifwj
質問者

お礼

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

回答No.2

>「Excelには演算誤差が出る仕様があります」 Microsoft自身が公表してます。 「Excel で浮動小数点演算の結果が正しくない場合がある 」 https://support.microsoft.com/ja-jp/kb/78113

rdyyfifwj
質問者

お礼

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

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

誤差の無い計算機は有りません。電卓も同じです。

rdyyfifwj
質問者

お礼

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

関連するQ&A

  • エクセルと関数電卓の答えの誤差。

    エクセルの数式の書き方がよく分かりません。 0.9507+0.0518cos(338.92+4771.989T) ※T=39.82478024 とゆう数式を関数電卓でそのまま解くと 0.978404843 と答えが出ます。 エクセルで計算すると 0.9507+0.0518*(COS(RADIANS(338.92+4471.989*A1))) ※A1=39.82478024 0.920914107 関数電卓とエクセルの解に 0.057490735の誤差が出ます このエクセルでの書き方で合っているのでしょうか? よろしくお願いします。

  • エクセルの分数計算 掛けると割るの順番は?

    質問します。 分数計算 ×が先でも÷が先でもどちらも答えが同じななると思うのですが、次の計算式は電卓でやる答えとエクセルでやる場合では答えが違います。何故でしょうか。 194,604,000×12/36=64,868,000と194,604,000/36*12=64,868,000 エクセルだと答えは同じです。 ところが、電卓でやると、194,604,000/36*12=64,867,999.9999となってしまいます。 電卓の端数の持ち方に限界があるからなのでしょうか? だれか詳しい方がいらっしゃればご教授いただけますでしょうか。

  • エクセルは

    エクセルで、掛け算、割り算をするのは、どのようにしたらいいですか、エクセルの画面で電卓もありますが、エクセルと、電卓ではどちらが、計算は、速いですか、皆さんは仕事以外に、自宅では、どのような用途で、エクセルは使いますか

  • excelと電卓で計算の結果が異なって表示される

    =1000/12*0.012 excel2010で上記のように入力した場合、計算結果は「1」と表示されます。 しかし、電卓で計算した場合は、「0.9999999999」と表示されます。 電卓が正しいのですが、excelで正しく計算結果を表示することは可能でしょうか。 (表示形式等は変更してみましたが正しく表示されません)

  • Excelの計算が合わないのですが・・・

    Excelの計算式で =SUM(A3:A31) として計算した式と 電卓で計算した答えが「1」違うのです。 何回も計算したのですが、そして、数式を入れ直したりしたのですが、 同じ答えになり、「1」違います。 何故こんなことが起こったのかわかりませんが、Excelの方が答えとしては間違っています。 きちんとした答えが出るように直したいのですが、 どうすればよいでしょうか? よろしくお願いします。

  • エクセルの計算について質問です

    エクセルの計算について質問です 数値の計算で、電卓で算出した値とエクセルで計算した値とが異なり困ってます。 【計算内容】 A(整数) × B(小数部2桁) = C(整数) ※Cは小数点以下切捨てとしたい ※エクセル計算ではROUNDDOWNを使用 【実際の計算結果】 (1)10,000,010,000.00 × 9999.99 = エクセル:99,999,999,999,999、電卓:99,999,999,999,999 (2)10,000,010,000.01 × 9999.99 = エクセル:100,000,000,000,000、電卓:99,999,999,999,999.9999 (1)は電卓とエクセルで結果は一致しますが、(2)は一致しません。 エクセルで小数点以下第4位が丸められてるようです。 【エクセルで算出したい値】 (2)ではDに999,999,999,999と出力したいです。 関数INTやROUNDDOWNを使ってみたのですが、うまくいきませんでした。 セルCの書式設定と、どの関数を使用すればよいのか教えていただけると大変助かります。

  • エクセルの関数を教えて下さい。

    エクセルの関数がわかりませんので教え下さい。 たとえば、 関数電卓では、  LOG(5)=0.6989・・・・ となり、  10^xを押して0.6989・・・・の計算をすると5になりますが エクセルで計算するのには、  10^xをどうすればよいのでしょうか?

  • エクセルの合計が合わない??

    エクセルで表計算をしてるのですが・・・ 何故か合計値が合いません。 例えば0.062+0.058+0.049=0.168? となったりします。 電卓で計算したら・・・=0.169 何ですがね~~ 不思議です??

  • エクセルで%

      エクセルで%の計算ができません。 電卓の様に=100*12%+と入力してもエラーが見つかりましたとなって答えが12になります。 112にする方法を教えてください。  

  • Excelの計算式について

    Excelの計算式について Excel2000を使用しているのですが、Excelの計算式の計算結果と 電卓を叩いて計算した結果が違っています。 計算式は単純な掛け算ですが、単純に数字の入っているセル同士の掛け算ではなく、 数式の入っているセル同士の掛け算なので、それが原因しているのでしょうか? どなたか解決策をお持ちの方がいらっしゃいましたら情報提供下さい。

専門家に質問してみよう