วันพุธที่ 10 สิงหาคม พ.ศ. 2554

ทิป Microsoft Excel 2007 แสดงผลการคำนวณผิดพลาด

Microsoft Excel 2007 แสดงผลการคำนวณผิดพลาด



ในวันที่ 22 กันยายน 2550 ได้มีการประกาศถึงการแสดงผลการคำนวณผิดพลาดของโปรแกรม Microsoft Excel 2007 โดยผลคูณที่ถูกต้องของ 850 กับ 77.1 คือ 65535 แต่โปรแกรม Microsoft Excel 2007 จะแสดงผลเป็น 100000 ตามภาพ


นอกจาก 850 คูณ 77.1 จะแสดงผลผิดพลาดแล้ว ผลคูณของสูตรอีกหลายๆ ตัวดังรายการข้างล่างนี้ซึ่งควรจะเป็น 65535 ก็แสดงผลผิดพลาดเช่นกัน โดยแสดงผลเป็น 100000






และถ้าเราป้อนสูตรเป็น =850*77.1+1 โปรแกรมก็ยังคงแสดงผลเป็น 100001 แทนที่จะเป็น 65536 ซึ่งทางไมโครซอร์ฟได้ประกาศว่า ข้อผิดพลาดดังกล่าวเกิดจากการแสดงผลผิดพลาดเท่านั้น โปรแกรม Microsoft Excel 2007 ยังคงคำนวณตัวเลขได้ถูกต้อง โดยถ้าเราป้อนสูตรเป็น =850*77.1+5 โปรแกรมก็จะแสดงผลเป็น 65540 ได้ถูกต้อง

อย่างไรก็ตาม ทางไมโครซอร์ฟได้ออกโปรแกรมแก้ไขข้อผิดพลาดดังกล่าวแล้ว โดยสามารถดาวน์โหลดได้ที่
http://download.microsoft.com/download/6/1/3/61343075-aa12-4152-a761-fccc16d6cef4/office-kb943075-fullfile-x86-glb.exe
หมายเหตุ
  1. ทั้งๆ ที่ 850 คูณกับ 77.1 ก็ได้ค่าเป็น 65535 ถ้าเราใช้สูตร DEC2HEX ในการแปลงค่าเลขฐาน 10 เป็นเลขฐาน 16 โดยใช้สูตรว่า =DEC2HEX(850*77.1) โปรแกรมกลับแสดงผลเป็น FFFE (ซึ่งค่าที่ถูกต้องคือ FFFF) แต่เราใช้สูตรว่า =DEC2HEX(65535) โปรแกรมจะแสดงผลเป็น FFFF ซึ่งข้อผิดพลาดยังคงเกิดขึ้นถึงแม้ว่าจะทำการอัพเดทโปรแกรมเป็น Service Pack 2 แล้วก็ตาม
  2. ถ้าใส่เลขระหว่าง 32768.848 ถึง 65535.848 ตามด้วย .848 หลังจากกด Enter แล้ว ให้เรากลับมาดูตรง Formular Bar ตัวทศนิยมจะแสดงเป็น .8479999999 แทน ดังภาพ
  3. เดือนกุมภาพันธ์ ปี ค.ศ. 1900 จริงๆ แล้วมีแค่ 28 วัน แต่ใน Microsoft Excel มี 29 วัน ดังภาพ ซึ่งทางไมโครซอร์ฟอธิบายว่า ข้อผิดพลาดนี้เกิดขึ้นเพราะ ต้องการให้โปรแกรมรุ่นใหม่สามารถใช้งานได้กับไฟล์ของโปรแกรมรุ่นเก่าเช่น Lotus 1-2-3 เป็นต้น


Credit :http://www.comtrick.com/?gid=MsOffice&p=MsExcel2007MultipleBug

ไม่มีความคิดเห็น:

แสดงความคิดเห็น