上個月微軟Excel工作小組成員David Gainer,於Excel部落格中,揭露Excel 2007的一個浮點運算顯示問題。在Excel 2007中特定浮點數字的運算結果,會顯示成錯誤數值,連帶也會造成報表列印時的錯誤。9日微軟已針對這個錯誤,發布新的Excel修正程式。

微軟Excel工作小組成員David Gainer在部落格中指出,在Excel 2007的工作格(cell)中,當特定浮點運算的結果,等於65535時例如77.1×850,Excel 2007會在工作格上顯示成錯誤數值100000。David Gainer強調這個錯誤只發生在工作格的顯示結果中,實際在記憶體中所儲存的結果是正確的。這個顯示錯誤也發生在Excel Services 2007上。


當浮點運算結果等於特定數值(共有12個,例如65535),Excel 2007會顯示成錯誤的100000。例如將65535除以5.1,再乘以5.1,正確數值應該還是原來的65535,但Excel 2007卻顯示成100000。列印時也會列印出錯誤的100000而非65535。但若是整數運算,例如65535/5,再乘以5,就沒有問題。


David Gainer沒有指出哪12個數值會造成顯示錯誤,只表示有問題的數值散布在65534.99999999995與65535之間,以及65535.99999999995到65536之間各有6個。

這個「顯示錯誤」在某些運算中,或者透過某些函數運算,例如取四捨五入的Round函數,Excel 2007也會顯示成錯誤結果100000。在Excel 2007列印時,會直接列印出這個錯誤顯示的數值,而不會重新列印在記憶體中的正確數值,造成Excel 2007報表的數字有錯誤。

微軟已於10月9日針對該錯誤發布修補程式,可供使用者自行下載修正。David Gainer表示近期將會加入Microsoft Update自動更新的修補清單中,未來也會列入Office 2007 Service Pack第一版的修補套件中。文⊙王宏仁

熱門新聞

Advertisement