ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

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

[已解决] VBA加法问题

[复制链接]

TA的精华主题

TA的得分主题

 楼主| 发表于 2024-8-3 17:51 | 显示全部楼层
image.png


(5.3-5.4)+1,直接计算,或者用round函数保留小数15位及以上,都会产生浮点误差,导致结果不等于0.9。
用round函数保留小数1至14位,才可以得到精确的与0.9相等的结果。

TA的精华主题

TA的得分主题

 楼主| 发表于 2024-8-3 17:59 | 显示全部楼层
这样,就又有一个疑问了,是否会产生浮点误差,是否有规律来判断?

比如这个 (5.3-5.4)+1 ,按我们的常识,等于0.9是毫无疑问的,但系统偏偏有误差。
应该不是所有的浮点数参与运算都有误差的吧?
什么样的计算会产生浮点误差,什么样的计算不会出现误差,是否有规律进行预判呢?

TA的精华主题

TA的得分主题

 楼主| 发表于 2024-8-3 18:13 | 显示全部楼层
image.png


image.jpg

原来针对这个问题,系统特意准备了应对的措施,俺居然不知道!
这真是:
面壁十年不破壁,关键时刻干着急!



TA的精华主题

TA的得分主题

发表于 2024-8-3 23:45 来自手机 | 显示全部楼层
饮冰e士 发表于 2024-8-3 18:13
原来针对这个问题,系统特意准备了应对的措施,俺居然不知道!
这真是:
面壁十年不破壁,关 ...

既然可改变→变量数据类型
声明货币类型变量是一种方法
如→Dim n1@, n2@, n3@

如果不改变→变量数据类型
使用Format函数也是一种方法
如→Range("D6") = Format(n3, "@")
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

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

GMT+8, 2024-11-18 08:24 , Processed in 0.044524 second(s), 8 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

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

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

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