启明办公

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 98|回复: 0

Excel中设置小数位数后运算结果出现误差的解决方法

[复制链接]

2

主题

5

帖子

9

积分

新手上路

Rank: 1

积分
9
发表于 2023-1-18 04:02:46 | 显示全部楼层 |阅读模式
今天在使用excel中发现两种殊途同归的计算方式,结果却不一样。
即利用W=A*B   X=W*C来计算X时,
在利用另一种方式来验证结果的时候:Q=B*C  X=Q*A
发现最终两个计算方法的结果X并不相同。

最后经过检验,发现各自的结果竟然与位数相关。
于是在查找资料后发现下面的一篇,来源绿色童年网站: [1]终于把问题解决了。(附上原网页以感谢原作者)
以此方便遇到相同问题的人来更快解决。
<hr/>原文:      
      当我们在使用Excel电子表格制作数据报表时,为了避免大量小数的运算,常常会用到四舍五入的方法,但是这样做可能会造成数值运算的误差,而且不容易找到原因。
  如果对计算出的数值精度要求不高,可以在Excel菜单栏上点击“格式” -“单元格”,在“单元格格式”窗口中设置“小数位数”的数字(如图1),决定保留几位小数,超过的位数就会被舍掉.


      但是,这样会产生一个问题。假设A的数值是34.52,四舍五入后是35;B是67.8,四舍五入后是68,按理说四舍五入后两数的相加值应该是103, 可为什么Excel计算出的却是102呢?原来,这是因为数字相加时,Excel按照没有四舍五入前的数字进行运算,才会发生实际与计算出的数值有差异的 情况。
  解决这个问题最简单的方法,就是在Excel菜单栏上单击“工具”-“选项”,在“重新计算”标签页中勾选“以显示精度为准”一项(如图2),然后点击“确定”按钮。此时,程序会弹出一个提示信息告诉你这样做会造成计算数值的误差,然后点击“确定”即可。


     如果你需要计算的资料是会计报表之类的信息,最好不要用这种方式处理。

<hr/>在Excel 2016的版本,具体位置在:
左上角的文件File-选项Option-高级Advanced-当计算这个工作簿时: When calculating this workbook- 把“以显示精度为准 Set precision as displayed”前面的勾去掉即可。(因为使用的是英文版,中文是我大致翻的。大家按照实际中文版来选择意思相近的选项即可。)


参考


  • ^Excel中设置小数位数后运算结果出现误差的解决方法 http://child.rksec.com/baike/software/1957.html
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|天恒办公

Copyright © 2001-2013 Comsenz Inc.Template by Comsenz Inc.All Rights Reserved.

Powered by Discuz!X3.4

快速回复 返回顶部 返回列表