PCDVD數位科技討論區

PCDVD數位科技討論區 (https://www.pcdvd.com.tw/index.php)
-   七嘴八舌異言堂 (https://www.pcdvd.com.tw/forumdisplay.php?f=12)
-   -   (緊急轉貼)Excel 2007重大bug:850×77.1=100000 (https://www.pcdvd.com.tw/showthread.php?t=747365)

三隻羊 2007-09-26 05:07 PM

(緊急轉貼)Excel 2007重大bug:850×77.1=100000
 
Google Group裡一個以微軟Office Excel為主題的新聞組 裡有人報告說,Excel 2007裡存在一個重大bug,會將850*77.1錯誤地計算為100000,而不是65535。

當然,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的新“專利”了。

出現這麼低級的bug,微軟工作人員開發和審核的不嚴謹是很顯然的,至少可以說是百密一疏,尤其是舊版產品反而沒有問題,無疑會讓微軟更加尷尬。



-------------------------------------------------------------
有使用OFFICE 2007的網友們要注意一下 :flash:

Luger 2007-09-26 05:14 PM

剛剛試一下 傻住了
怎麼會有這......鳥事Orz

dday 2007-09-26 05:52 PM

真的耶...
這...
Orz...

morphine0821 2007-09-26 06:20 PM

引用:
作者dday
真的耶...
這...
Orz...


有人因此加薪嗎?

野口隆史 2007-09-26 06:25 PM

這種時候推行一下OpenOffice.org是很好地

http://zh.openoffice.org/

elase 2007-09-26 06:48 PM

這算復活節彩蛋嗎..

Rainwen 2007-09-26 07:07 PM

Excel計算出錯是很嚴重的問題...... :jolin:

pc 2007-09-26 07:24 PM

有機會去認識一下office組的妹妹了........XDD
就在隔壁組喔.........XDDD

usam 2007-09-26 07:35 PM

果然,

樹大有枯枝...

lora 2007-09-26 07:57 PM

再一次驗證了我的信念
微軟的東西,沒出到SP1,打死不用


所有的時間均為GMT +8。 現在的時間是01:06 AM.

vBulletin Version 3.0.1
powered_by_vbulletin 2025。