Excel คำนวณไม่ตรง?

บางทีค่าที่ Excel เก็บก็ไม่ตรงกับที่แสดงผลเมื่อใช้ Format มากำกับการแสดงผล

มีมิตรสหายท่านหนึ่งปรึกษาว่าใช้ฟอร์ม excel ที่แจกจ่ายกันมานานแล้วทำงานตามปรกติ ปรากฏว่าพอหัวหน้ามาคำนวณตรวจทานแล้วผลลัพธ์ไม่ตรงกัน เป็นเพราะอะไร?


ความจริงก็พอเดาออกตั้งแต่ได้ยินคำถามแล้ว แต่เพื่อให้แน่ใจเลยให้ให้มิตรสหายท่านนั้นส่งไฟล์ excel มาให้ดู และเมื่อได้ดูก็เป็นอย่างที่คิดเอาไว้

ปัญหา ทำไม 60,000 X 1.13 ผลลัพธ์เท่ากับ 67,659.57

จากภาพ ช่องที่มีปัญหาคือ U6 ซึ่งเป็นผลจาก K6 X S6 หรือ 60,000 X 1.13 ผลลัพธ์ควรจะได้ 67,800 แต่ที่ excel แสดงให้เห็นคือ 67,659.57

งานนี้ excel ไม่ได้คำนวณผิดแต่อย่างใด

ปัญหาอยู่ที่ S6 ซึ่งได้ค่ามาจาก R8/R6 หรือ 2,120/1,880 ผลลัพธ์ควรจะได้ 1.127659574 แต่ตั้งฟอร์แมตให้แสดงผลทศนิยมเพียงแค่ 2 ตำแหน่ง excel เลยปัดเศษให้เป็น 1.13 และถึงแม้ว่าจะแสดงผลลัพธ์ให้เห็น 1.13 แต่ excel ก็ยังเก็บค่า 1.127659574 เอาไว้เหมือนเดิม

เมื่อเปลี่ยนฟอร์แมตในช่อง S6 เพื่อให้แสดงค่าที่แท้จริงออกมา

เมื่อเอา 60,000 X 1.127659574 ผลลัพธ์จะได้เป็น 67,659.57447 excel คำนวณถูกต้องแล้ว

จะแก้ปัญหาอย่างไรดี?

วิธีการแก้ปัญหาที่ได้ให้มิตรสหายท่านนั้นเลือกมีสองทางคือ

  1. ยกเลิกการตั้งค่าทศนิยมสองตำแหน่ง ก็จะได้ผลลัพธ์ตามจริงคือช่อง S6 จะเป็น 1.127659574 และผลลัพธ์ในช่อง U6 จะได้ 67,659.57447
  2. ใส่ฟังก์ชัน Round ครอบสูตรการคำนวณในช่อง S6 ไว้อีกทีหนึ่ง เพื่อบอก excel ว่า เก็บทศนิยมเพียงแค่สองตำแหน่งนะ คราวนี้ S6 จะเป็น 1.13 และได้ผลลัพธ์เป็น 67,800 แล้ว
ใส่ฟังก์ชัน Round ในช่อง S6 เพื่อปัดทศนิยม 2 ตำแหน่งอย่างเป็นทางการ

ความจริงเรื่องนี้เป็นเรื่องพื้นฐานที่คิดว่าทุกคนคงรู้กันแล้ว แต่บางทีก็หลงลืมกันไปบ้าง เลยเอามาเขียนบันทึกเอาไว้ว่าค่าที่ excel เก็บไว้จริง กับค่าที่ format เอาไว้บางทีมันก็หลอกตาเราได้เหมือนกัน