ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 效率神器,一键搞定繁琐工作
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
让更多数据处理,一键完成 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
查看: 11103|回复: 14

[求助]已经设置“以显示值为准”,为什么计算结果会这样?

[复制链接]

TA的精华主题

TA的得分主题

发表于 2004-9-29 13:34 | 显示全部楼层 |阅读模式
不应该啊,原来的都是2 位小数,经过加减后居然出现0.149999的尾数,导至校核栏出错
[此贴子已经被shangyu于2004-9-29 17:23:55编辑过]

[求助]为什么会这样?

[求助]为什么会这样?

[求助]为什么会这样?

[求助]为什么会这样?

TA的精华主题

TA的得分主题

 楼主| 发表于 2004-9-29 13:42 | 显示全部楼层
我已经设置选项中“以显示值为准”了

TA的精华主题

TA的得分主题

发表于 2004-9-29 13:47 | 显示全部楼层
贴图看不清楚,最好是上传附件,估计是浮点运算所致,用round()函数套一下。

TA的精华主题

TA的得分主题

 楼主| 发表于 2004-9-29 14:48 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册

上传不方便。还辛苦各位了。

我想也是这方面的原因,可不明白为什么居然在此出现错误,其他的地方还没有出错。

表结构是这样。表1是现金、银行、税卡的收付明细,表2是报表。采用vlookup函数检索,表1中均为默认格式V型吧,最多的小数位是2位小数。表2中备注栏是用于校核错误的表1表2的现金收付是否相符。没想到手工计算是正确的,Excel居然认为是错误的。

原因是50592.31-48336.16=2256.14999999999<>2256.15。

不知为什么付出现这样的问题?其余计算时没有这个问题啊。

[此贴子已经被作者于2004-9-29 14:57:33编辑过]

TA的精华主题

TA的得分主题

发表于 2004-9-29 17:17 | 显示全部楼层

原因是你不是比较两个单元格的值,而是比较50592.31-48336.16的结果(没有显示在单元格,因此值仍为2256.14999999999)与2256.15;

所以“以显示值为准”没用,如果将50592.31-48336.16的结果放入一个单元格,在与2256.15比较就可以。

或在比较公式中使用if(round(50592.31-48336.16,2)=2256.15,"正确","有误")

TA的精华主题

TA的得分主题

 楼主| 发表于 2004-9-30 10:38 | 显示全部楼层
问题是:其他的地方也有同样的公式却没这个问题啊!

TA的精华主题

TA的得分主题

发表于 2004-9-30 15:17 | 显示全部楼层

公式是一样的,但数据不一样;

这个误差并不是一直都有,只是某些数字的运算才会产生。

如50592.31-48336.16=2256.14999999999;

但50592.31-48336.15=2256.16;

你可以输入数值后,在编辑状态按F9查看结果。

TA的精华主题

TA的得分主题

 楼主| 发表于 2004-9-30 15:55 | 显示全部楼层
谢谢版主。这是不是excel的bug呢

TA的精华主题

TA的得分主题

发表于 2004-9-30 16:10 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
以下是引用ykwater在2004-9-30 15:55:00的发言: 谢谢版主。这是不是excel的bug呢
应该不算吧,excel运算是会将数值转为二进制,然后转回十进制,就会造成所谓“浮点运算误差”。

TA的精华主题

TA的得分主题

发表于 2004-9-30 16:24 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助

=50592.31-48336.16=2256.150000 我是EXCEL2000没有这个情形

您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-11-25 02:51 , Processed in 0.046751 second(s), 10 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

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