電卓とエクセルの計算が合わない3つの理由
エクセルで計算した結果を、電卓で検算をしようとすると計算結果が合わないケースがあります。
この記事の目次
電卓とエクセルとで計算が合わない原因
電卓とエクセルとで計算が合わない主な原因は、次の3パターンに分けられます。
エクセルに入力されている実際のデータが、見た目と違う
エクセルでは、表示形式の設定により、「実際のデータ」と「見た目」が違うケースがあります。
例えば、エクセルで
A2セル:12.4
と入力してある場合。
表示形式で、小数点以下を見せない設定にしていると、見た目は「14」「12」と見えてしまいます。
ところが、エクセルで計算式を入力すると「元々入力されている値」を使って計算されます。
ですから、A3セルに「=A1*A2」というふうに入力すると、A1セル・A2セルに元々入力されている値を使って「13.5×12.4=167.4」というふうに計算されます。
その結果、(A3セルも小数点以下を見せないように設定しておくと)A3セルは「167」と表示されることになります。
一方で、見た目の数値を使って電卓で計算をすると「14×12=168」となってしまい、エクセルの計算結果と一致しません。
エクセルの計算過程で端数処理をしている
エクセルの計算式で、計算過程の中で、関数を使った「端数処理」をしていると、電卓での計算結果とずれてしまう場合があります。
例えば、エクセルで次のような計算式が組まれている場合を考えてみます。
- 1行ごとに消費税込金額を計算し、round関数で整数単位に四捨五入
- (端数処理後の)消費税込金額を合計して、総合計を計算
エクセルの計算だと、上記のように「105,668」となります。
ところが、電卓で「65420」「×」「1.08」「M+」「32420」「×」「1.08」「M+」と計算をすると、計算結果は「105,667.2」となります。
四捨五入をすると「105,667」となり、先ほどのエクセルでの計算結果「105,668」と計算結果は一致しません。
計算結果が違う原因は「端数処理のタイミングの違い」です。
- 電卓での計算では、計算の最後で端数処理をしている
- エクセルの計算では、計算途中で端数処理をしている
という違いがあるために、計算結果が変わってきてしまうのです。
電卓の桁落ち
エクセルで「=1/3*3」という計算式を入れると「1」となります。
一方で、電卓で同じ計算をすると「0.9999999999」という計算結果になってしまいます。
普通の電卓だと、割り算が「割り切れない」場合には、有限桁で計算を打ち切ってしまい、誤差が生じてしまいます。
例えば、「1÷3」は本来は「0.3333333・・・」と無限に「3」が続くはずのところを「0.33333333333」というふうに有限桁で計算を止めてしまいます。
当然、その数値を使って後続の計算をすると、計算結果が正しくなくなってしまいます。
電卓とエクセルの計算を合わせるためには
電卓とエクセルとで計算を合わせるためには、次のことに気をつけましょう。
- 電卓で計算をする際には、エクセルに入力されている「実際の値」を使う
- エクセルと電卓とで端数処理のタイミングを合わせる
- 電卓で割り切れない数の計算をしない