アーカイブ

エクセルの計算は実は正確ではない

どもー、ノダッシュです。


SEから異動してからというもの、管理部門ということもありエクセルを使う頻度が格段にアップしてます。


 


そんな中でここ最近、気になっていた事があります。


それは、絶対に合うハズの計算が合わなかったり、絶対に「0」(ゼロ)になるハズの計算なのに「-0」(マイナスゼロ)の表記になったりする事デス。


(#゚Д゚)ナンデヤネン!!


 


なんでかなーと不思議に思い、表示桁数を小数点以下にずーっと増やしていくと・・・


「-0.000000000000001425・・・」


みたいな事になってて、エクセル君はさも当然のごとくにマイナス表示をしたと言い張っているのです。


 


実はこれにはワケがあるようで・・


なにやらエクセル君は計算速度を重視し、正確さを犠牲にしているとの事・・・
※「0」と「1」のデジタル世界でなぜ正確でない計算の方がそんなに速いのかにすごく興味が湧きますね。


 


そーなんだー!


 


つまり、どう対応すればよいかと言うと・・・


 


正しい数値を表示したい、計算したい、関数に組み込みたいという場合にはROUND関数(四捨五入関数)を用いてしっかりと小数点○桁以下を整理する必要があるという事ですね。


 


エクセルを使い始めて8年ぐらいは経ちますが、そんなこと初めて知りましたよ。


やはりコンピュータの世界は知っているようで知らない、ブラックボックスな部分がまだまだありそうです。


 


<参考サイト>


日経PC21-小数計算で発生する「誤差」

LINEで送る
Pocket