Excel 2007で重大なバグが発覚、計算結果をまちがって表示――リリースから半年以上、ユーザー・グループの報告で明らかに

 米国Microsoftは9月25日、表計算ソフトウェアの最新版「Excel 2007」に、一定条件下でまちがった計算結果を表示するバグがあることを認めた。

 このバグは先週土曜日、Excelユーザーのニュース・グループ「microsoft.public.excel」で明らかにされたものである。「モルハム・セリー」と名乗るユーザーが、「Excel 2007で850×77.1を計算したところ、100,000という結果が出た(正解は65,535)」と報告したのが発端だ。

 その後、同ニュース・グループを利用する多くのユーザーから、同様の報告が寄せられた。該当スレッドに対するコメント数は、9月27日時点で133にも上っている。ユーザーらの検証によると、850×77.1以外の計算でも、誤った結果が表示されることがあるという。

 MicrosoftのExcelチームは9月25日、同社の公式ブロクでこの問題を謝罪し、バグの存在を認めた。Excelチームでプロジェクト・マネジャー主任を務めるデビッド・ゲイナー氏は、「ユーザーからの報告の多くは、乗算に関するものだ。しかし、われわれが検証したところ、乗算とバグの関連性は認められなかった」とコメントした。

 ゲイナー氏によると、Excel 2007が誤った数字を表示する現象は、計算結果が65,535~65,536になる浮動小数点計算のうち、特定の12のケースで発生するという。ちなみに、同問題が発生するのはExcel 2007だけで、そのほかのバージョンのExcelには存在しない。

 ゲイナー氏は、「この問題はExcel 2007の計算処理にあるのではなく、ワークシートに数字を表示する際に、値やフォーマットを処理するコードのバグが原因だ」としている。

 ゲイナー氏はExcel 2007の計算処理が誤りでない証拠として、「850×77.1の計算結果は100,000と表示される。しかしこの値にさらに2をかけると、回答は200,000ではなく、正しい値の131,070が表示される。つまりExcel 2007には、正しい値が保存されているのだ」と説明している。

 なお同バグの修正パッチは、完成次第MicrosoftのWebサイトからダウンロードが可能になり、「Windows(Microsoft) Update」などの自動アップデートを通じてユーザーに配布されると見られている。しかし現時点では、同社のブログには「(同バグの)修正パッチは、早急にリリースする予定」と記載されているだけで、具体的な日程は明らかにされていない。

 Excel 2007のユーザーらは、遅くとも次回の定例セキュリティ修正パッチの配布日までには、同バグのパッチが配布されると予測している。なお、次回のセキュリティ修正パッチ配布日は、10月9日の予定だ。

(グレッグ・カイザー/Computerworld オンライン米国版)

米国Microsoft
http://www.microsoft.com/

提供:Computerworld.jp

MSDNの価格