Excel 2007重大bug:850×77.1=100000
Google Group里一个以微软Office Excel为主题的新闻组里有人报告说,Excel 2007里存在一个重大bug,会将850*77.1错误地计算为100000,而不是65535.出现这么低级的bug,微软工作人员开发和审核的不严谨是很显然的,至少可以说是百密一疏,尤其是旧版产品反而没有问题,无疑会让微软更加尴尬.
850*77.1并不是一个特例,不信你可以在Excel 2007里计算下边这些乘法:
=5.1*12850
=10.2*6425
=20.4*3212.5
=40.8*1606.25
=154.2*425
=212.5*308.4
=308.4*212.5
=425*154.2
结果都是100000吧?这个看起来有些不可思议的问题很快得到了多名专家的确认,Excel MVP Bernad Leingme更是第一个站了出来.
事实上,问题出现在65535这个数字上.虽然现在还没能最终肯定到底是什么原因,但考虑到65535这个数字的特殊性(转换成二进制就是1111111111111111),初步怀疑Excel 2007在浮点计算或者舍入误差方面出现了失误.另外还可以看出,出错的乘法公式中至少有一个数字带有一位小数.更进一步地,如果把上述乘法之一放在A1单元格里,然后A1+1就会返回100001,A1*1返回100000,A1/1返回100000.这些无疑都是错误的,因为Excel 2007已经把A1的值当成了100000,不过奇怪的是A1*2返回的却是正确的131070,A1-1也是65534没错,A1/2也准确得到了32767.5.Excel 2007如此反复无常的确令人难以琢磨.
Office 2000/XP/2003等旧版本都不存在这个bug,看来只是Office 2007的新“专利”了.
来源:mydrivers
分析称Office 2007将和Vista有同...
Office 2007 SP2处理ODF格式文...
2007 Microsoft Office S...
Microsoft Office 2007 S...
2007 Microsoft Office 2...
Office 2007 SP2发布日宣布 改进...
微软宣布本月内发布Office 2007 SP...
2007 Office System Serv...
微软随SharePoint Designer赠...
微软将SharePoint Designer(...
[國內BT]Microsoft Office ...
[独家]Office 2007 SP2显著更新...
Microsoft Office 2007 S...
Outlook 2007 2009年2月累积更...

订阅新闻