ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

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

[求助] 对取整函数INT的疑问.

[复制链接]

TA的精华主题

TA的得分主题

发表于 2013-11-22 19:59 | 显示全部楼层 |阅读模式
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
A                   B                C              D             E
1                       
2                       
3        0.3798        0.3923        400             4
在E4单元格输入函数:=INT((C3-B3)*D3)=4  
即:=INT((0.3923-0.3798)*400)=4,但手工算应为5,问题不知出在什么地方,请高手们帮忙解答。谢谢!!!

TA的精华主题

TA的得分主题

发表于 2013-11-22 20:11 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
如果你保留14位小数点时,你会发现它=4.999999999999998

TA的精华主题

TA的得分主题

发表于 2013-11-22 20:11 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
浮点运算造成的误差。
=(C3-B3)*D3
增加小数位数后,显示为4.999999999999980

微软官方网站对此有解释。

TA的精华主题

TA的得分主题

发表于 2013-11-22 20:12 | 显示全部楼层

TA的精华主题

TA的得分主题

 楼主| 发表于 2013-11-22 20:32 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
由于本人工作中对有些数据不需四舍五入,只需取整,对于绝大多数取整,统计数据与手工算是一致的,但对于下列与手工算相差1的现象也出现过几次了,请问高手们在没有办法解决。
=INT((0.3923-0.3798)*400)=4

评分

1

查看全部评分

TA的精华主题

TA的得分主题

发表于 2013-11-22 21:03 | 显示全部楼层
EXCEL及2003版
工具 - 选项 - 重新计算(在“以显示精度为准”前打勾)

EXCEL 2007版
OFFICE按钮 - EXCEL选项 - 高级 - 计算此工作簿时 下 “将精度设为所显示的精度”前打勾)

TA的精华主题

TA的得分主题

发表于 2013-11-22 22:44 | 显示全部楼层
dengjq2000 发表于 2013-11-22 21:03
EXCEL及2003版
工具 - 选项 - 重新计算(在“以显示精度为准”前打勾)

又学习了  多谢版主

TA的精华主题

TA的得分主题

发表于 2013-11-23 08:09 | 显示全部楼层
dengjq2000 发表于 2013-11-22 21:03
EXCEL及2003版
工具 - 选项 - 重新计算(在“以显示精度为准”前打勾)

貌似这个勾选不起作用,类似这种浮点计算造成的计算精度问题在很多时候都能遇到的,,,呵呵

TA的精华主题

TA的得分主题

发表于 2013-11-23 08:14 | 显示全部楼层
kane027 发表于 2013-11-23 08:09
貌似这个勾选不起作用,类似这种浮点计算造成的计算精度问题在很多时候都能遇到的,,,呵呵

不能完全解决,但基本上还是可以解决一些点的!
我碰到这样类似的问题,通过上述操作,看似解决了。

TA的精华主题

TA的得分主题

发表于 2013-11-23 08:37 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
为规避浮点运算误差,向上取整公式要强一些。
=CEILING((C3-B3)*D3,1)
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

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

GMT+8, 2024-11-16 07:52 , Processed in 0.046188 second(s), 13 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

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

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

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