プロが教えるわが家の防犯対策術!

研磨の「取り代(加工しろ)」関連です。
参考URL
https://oshiete.goo.ne.jp/qa/13069878.html
の続きです。
参考URLの
ですが セル(5)(6)には「avg.関数」で計算させています。
それで 
(7) 研磨後の「取り代」「avg.」「(5)-(6)」= 8.639μ「avg.」10μより少ない
  ので時間を上る
 (7)は 製品10枚研磨後の「取り代」の「平均値」が出ます。

ですが、引き算は割り算と違って、ちゃんとした答えは決まっています。
にもかかわらず! エクセルでは間違った答えが出てしまいます。
エクセル「2013」を使っています。
参考URLの他の製品ですの値ですが
 0.304が正解なのに エクセルでは小数点6桁ぐらいになりました。
セル「表示形式」ですが 標準 数値 など変更しても 同じです。

なぜ エクセルは計算ミスをするのでしょうか?


よろしくお願いします。

質問者からの補足コメント

  • うーん・・・

    ありがとうございます。
    会社の製品の計算なので 電卓派から 訂正されました。
    それで エクセルの欠点が分かりました。

    電卓とエクセルの演算方が 基本から 違っている!?

    まだ詳しく読んでいないのですが 分かりました。
     使えないですエクセル 共同作業なので 私だけ
    いつも 間違った回答でやったら 人間関係の
    歪 にもつながりかねません。

      補足日時:2022/08/12 05:21
  • うーん・・・

    どうもすみません。
    ほぼ毎日26年も使っているエクセルさんに失礼でした。
    エクセルの欠点がわかれば、それなりに 修正しながら
    できます。 会社の2013年のエクセルは古いので 
    それも影響があるかもしれません エクセル最新版は
    OKしれませんね

      補足日時:2022/08/12 06:50
  • HAPPY

    最近 エクセルで計算したのと
    電卓が 合うようなってきたと思います。
    これは業務改善 で パソコンがあるのだから
    やっぱりエクセルが便利で 計算ミス もないので
    古年は電卓 私は全てエクセルで、できるよう設定したいと思います。
    ということで計算式を作成します。
    パターンが 数種類あるので それぞれ作成すれば
    より一層 効率が上がります。
     試しにマクロも VB も 視野に入れたいと思います。

      補足日時:2022/08/16 03:35

A 回答 (7件)

主な理由は2つあります。


・10進数小数を有限桁の2進数小数に変換するときの誤差
・計算で発生する誤差の変化


Excelのセルには数値は二進数小数で記憶されます。
10進数小数の多くは、無限桁の2進数小数になります。
たとえば 10進の0.1は2進では 0.000110011001100... と無限小数になりあす。
コンピュータでは無限小数は扱えないので適当なところで丸めて有限桁にしてしまいます。この丸めた分が誤差となります。

このような現象は他の進数同士でも発生します。
分:秒の関係は60進法になっています。
0:10 を10進法にすると、 0.16666666666... (10/60) になります。
これを小数第2位まで丸めると 0.17 になり、 0.16666666666... との間に誤差が生れます。
0.17を元に戻すと 0:10.2 となり、0.2秒違っています。


計算のやり方や順序によって、誤差は絶対値や相対値が変化します。
引き算で発生する「桁落ち」には注意が必要です。
12345 - 12344 を例にします。
元の数はどちらも有効数字5桁です。
ですが、結果の 1 は有効数字1桁と大分精度が落ちています。
また、誤差1 を含んだ12345+1 - 12344 = 1+1 を考えると
元の誤差は 1/12345 = 訳0.008% なのに対して、計算後の誤差は 1/1 = 100% になっています。

> 0.304が正解なのに エクセルでは小数点6桁ぐらいになりました。

これは、もともとあった10進→2進の誤差が引き算の桁落ちによって相対的に大きくなって、表に出てくるようになった、ということでしょう。


Excelを使うなら(もっと言えば、コンピュータを使うなら)こういう誤差を頭に置いておく必要があります。
対策は大きく2つです。

(1).計算や数値を工夫する。
例えば。
10進2進の変換誤差は、小数でしか発生しません。整数は 誤差無く変換できます。
桁落ちも、有効数字の低下はありますが、誤差はありません。
そこで、なるべく整数を使うことで、誤差を押えられます。
今回の場合なら、μmではなくnmを使えば整数になります。


(2)誤差を容認してそのまま使う
6桁になるといっても、0.304 が 0.303999 とか、それくらいの違いだと思います。
その0.000001 の違いで、結果がどれくらい違うのでしょうか?
おそらく、かなり小さな違いにしかならないと思います。
それなら無視するのも手です。
    • good
    • 2

個人的には電卓は正しいと思います。


と言うより電卓での計算結果によって補正をすると言う<作業マニュアル>を回答者は否定することが出来ないからです。
多分幾多の検証により御社で取り決めた手順だと考えますので。

それよりも質問を元に戻して<電卓とExcel>での計算結果が同じようになるよう修正されたとして、大元にある<作業時間の短縮>に繋がるのでしょうか?
と心配してしまいます。
結局こちらの改善が目的なのでしょうから。

経験的には測定機の奪い合いじゃないかと感じますが、そこはどうなのでしょう?
    • good
    • 1

> (電卓では)0.304が正解なのに エクセルでは小数点6桁ぐらいになりました。



電卓が正解ではないのです。 
仮に、÷34で計算したのであれば、0.304×34=10.336が元の値ということになりますが、そうでしたか。 10.328を÷34でも 0.304になりませんか。
たぶん、電卓を、小数点以下3桁までの固定小数点で使っているのだろうと思います。
同じにしたければ、
https://support.microsoft.com/ja-jp/office/%E5%B …
「電卓は正しいのに エクセルで計算させると」の回答画像6
    • good
    • 1

1. Excelの表示桁数が違うだけで、電卓の結果と同じ桁になるように四捨五入すれば、同じ結果になる


2. Excelの結果を電卓の結果と同じ桁になるように四捨五入しても、結果が違う

1,2のどちらなのでしょう?

1.なら表示形式で小数点の位置を固定するだけです。
「Excel 小数点 揃える」で検索しましょう。

2.なら計算自体を工夫する必要があります。
前に書いたように、nmで計算するとか。
μm表示が必要なら、計算用セルと表示用セルを別に用意すればいいです。


余談ですが。
(10) = (9)÷(8) = 1.361 / 0.2540
= 5.35826771654
(10) = (9)÷(8) = (9) ÷ ( (7)÷(4) ) = (9) × (4)÷(7) = (1.361 * 34) / 8.639
= 5.35640699155
と計算方法をちょっと変えるだけでこれだけ差が出ます。
※ Google電卓を使用

(8) 1分の研磨レート「(7)÷(4)」 0.2540μ
とありますが、
8.639 / 34 = 0.25408823529
なので、 0.2541では? それだと
(10) = (9)÷(8) = 1.361 / 0.2541
= 5.35615899252
になります。
    • good
    • 1

数値を丸める


https://support.microsoft.com/ja-jp/office/%E6%9 …

Excelですと<見せかけの数値>と<セルにある値(若しくは計算結果)>が違ったりします。
ので<数値を丸めて>どこまでを有効な数値と捉えるのか、その数式が含まれて無いって事では?

過去にはExcelは小数点以下の数値に誤差が出るって話も聞きましたよ。

電卓は叩いた分だけで計算するから、もしかしたら頼まれた人は叩き直しをしていたのでは?
前回の回答を以前頼んでた担当者に検証してもらったのですかね?
電卓で計算していった1工程毎の数値と相違がないかどうか。
    • good
    • 1

エクセルの操作は、素人ではわかりません。

エクセル使いたいなら、パソコンの学校でみにつける必要があると思います。できない操作は無理にやらないことです。
    • good
    • 0

>0.304が正解なのに エクセルでは小数点6桁ぐらいになりました。


少数点第3までの計算条件と四捨五入の指示をしなかったのでは?

>なぜ エクセルは計算ミスをするのでしょうか?
人が指示した通りに行った結果です
1番目の回答がきちんとされてたら違う結果になると思います
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!