为何Excel公式乘法与直接数值乘法结果不同?需得94163
差异原因与解决方法
为什么结果不同?
- 单元格
G21和H21显示的17.18、5480.96是四舍五入后的显示值,但Excel实际存储的是更精确的原始数值(比如可能是17.184、5480.963这类带有隐藏小数位的数值)。 - 公式
Round(G21 * H21, 0)计算时调用的是单元格的原始存储值,而非显示的两位小数数值,因此和直接用Round(17.18 * 5480.96, 0)的结果产生差异。
如何得到94163的结果?
要基于显示的两位小数数值计算,可用以下方法:
- 方法1(推荐,不修改原始数据):先对两个单元格的数值按两位小数四舍五入,再相乘取整,公式为:
这个公式会先把=ROUND(ROUND(G21,2)*ROUND(H21,2),0)G21、H21的数值统一处理为显示的两位小数,再进行计算,结果和直接用17.18*5480.96取整一致。 - 方法2(谨慎使用,会修改数据存储):开启“以显示精度为准”设置:
- 打开Excel选项→切换到「高级」标签
- 找到「计算此工作簿时」区域,勾选「将精度设为所显示的精度」
- 确认后,所有单元格会以显示值作为存储值进行计算,但此操作不可逆,会永久改变数据的原始精度,仅适合确认不需要保留原始精确值的场景。
内容的提问来源于stack exchange,提问作者Saravanan
相关产品推荐
相关产品推荐

