警惕“四舍五入”造成的数据误差
2007-05-29 21:44:04 来源:WEB开发网核心提示:很多朋友都在使用Excel编辑、处理各种数据报表,在使用过程中往往会发现Excel自动计算的结果与我们自己手动计算的结果会出现一个误差,警惕“四舍五入”造成的数据误差,例如Excel工作表中有B2=16.18、C2=12.69,将B2与C2之和乘以0.11,点击Excel菜单栏的“工具/选项”,
很多朋友都在使用Excel编辑、处理各种数据报表,在使用过程中往往会发现Excel自动计算的结果与我们自己手动计算的结果会出现一个误差。例如Excel工作表中有B2=16.18、C2=12.69,将B2与C2之和乘以0.11,将结果“四舍五入”,保留两位小数,再将结果乘以3.12,再“四舍五入”保留两位小数,Excel的计算结果是“9.91”,而我们手工计算的结果是“9.92”。是什么原因造成Excel计算错误呢?难道Excel也会犯迷糊?非也!Excel并不会犯迷糊,造成误差的根本原因是“四舍五入”。
我们设置表格的时候,在“单元格格式”窗口中设置的“小数位数”只能将单元格中的数值“显示内容”四舍五入,并不能对所存放的“数值”四舍五入。换句话说,显示内容和实际存放内容(即参与运算的内容)并非完全一致。因此,造成Excel计算结果与实际需求出现误差的元凶正,正是单元格数据的显示内容与参与计算内容的不一致性。那么我们该如何避免这种误差呢?
方法很简单,其一是利用Round函数对小数进行精确的四舍五入,其格式为:round(number,num_digits),其中“number” 为需要四舍五入的数字或运算公式,num_digits指定四舍五入的位数。针对本文所述问题,我们只需在D2单元格中输入“=Round((B2+C2)*0.11,2)”,在“E2”单元格中输入“=Round(D2*3.12,2)”即可。另外,我们还可以通过Excel进行一下简单的设置来达到精确计算的目的,点击Excel菜单栏的“工具/选项”,在弹出的“选项”窗口中切换到“重新计算”选项卡,在“工作簿选项”栏中将“以显示值为准”复选框打上钩,点“确定”按钮即可(如图)
[]
更多精彩
赞助商链接