เป็นปัญหาที่พบกันบ่อย ๆ ครับว่าเมื่อ Copy สูตรมาแล้วโปรแกรมไม่แสดงผลที่ถูกต้อง คือแสดงผลลัพธ์ที่เหมือนกันกับเซลล์ที่เรา Copy มา ซึ่งที่จริงแล้วควรแสดงผลต่างกันที่เป็นเช่นนี้นั้นมี 3 สาเหตุหลักครับ
สาเหตุที่ 1
เนื่องจากเราไปกำหนดให้เป็นการคำนวณแบบ Manual อาจจะโดยตั้งใจหรือไม่ตั้งใจก็ตาม จะทำให้โปรแกรมไม่คำนวณผลลัพธ์ให้ทันที จนกว่าเราจะ Save หรือกดแป้น F9 เพื่อให้แสดงผลการคำนวณ
เราสามารถกำหนดให้ Excel คำนวณผลลัพธ์อัตโนมัติดังนี้ครับ
- เข้าเมนู Fomulas
- เลือก Calculation Options
- เลือก Automatic
สาเหตุที่ 2
แม้จะปรับให้เป็น Automatic แล้วยังพบว่าโปรแกรมไม่คำนวณผลลัพธ์ให้ ที่เป็นเช่นนี้น่าจะเกิดจากโปรแกรมเกิดการติดขัดบางประการครับ การแก้ไขจะต้องทำการ Activate สูตรทั้งหลายเสียใหม่ เพื่อกระตุ้นให้เกิดการคำนวณ จากนั้นจะสามารถใช้ได้ปกติ สำหรับปัญหานี้ไม่ได้เกิดขึ้นบ่อย แต่ก็ทำให้ใครหลายคนเสียเวลามามากมายแล้วครับ
การ Activate สูตรใหม่ สามารถทำดังนี้ครับ
- กดแป้น Ctrl+H เพื่อเปิดกล่องโต้ตอบ Replace
- ช่อง Find what: คีย์เครื่องหมาย =
- ช่อง Replace with: คีย์เครื่องหมาย =
- คลิกปุ่ม Replace All
สาเหตุที่ 3
เนื่องจากการอ้างอิงเป็นวงกลมโดยไม่ตั้งใจ ซึ่งก็คือการนำเซลล์ผลลัพธ์ไปใช้ในสูตรคำนวณด้วย ยกตัวอย่างเช่นเรากำลังคีย์สูตรในเซลล์ A2 เป็น
=A2+A1
จะเห็นว่าเรานำ A2 ไปใช้คำนวณด้วยทั้ง ๆ ที่ปัจจุบันเรากำลังคีย์สูตรอยู่ในเซลล์ A2 โดยปกติเมื่อเราคีย์สูตรเช่นนี้ลงไป โปรแกรมจะฟ้องว่าเรามีการคำนวณอ้างอิงเป็นวงกลม และหากเราคลิกยอมรับ จะทำให้ไฟล์เราคำนวณ “วน” ไปได้ 1000 ครั้ง (ค่าตั้งต้น) จำนวนรอบการคำนวณสามารถไปกำหนดเองได้ว่าให้คำนวณวนได้กี่รอบ เมื่อครบรอบแล้วก็จะไม่สามารถคำนวณต่อได้ แม้เราทำการเปลี่ยนแปลงหรือแก้ไขสูตร โปรแกรมก็จะไม่แสดงการคำนวณให้อีก โดยปกติแล้วที่ Status bar จะมีการแจ้งผู้ใช้ว่า Circular: ตามด้วยเซลล์ที่เป็นต้นเหตุให้เกิดการอ้างอิงแบบวงกลม
แต่หากการคำนวณวนนั้นอยู่ใน Sheet อื่น หรืออยู่ในไฟล์อื่นที่เปิดขึ้นมาพร้อมกันที่ Status bar จะแสดงแค่ Circular เท่านั้นครับ การแก้ไขให้คลิกดูแต่ละ Sheet และแต่ละไฟล์เพื่อหาเซลล์ที่เป็นต้นเหตุของการอ้างอิงแบบวงกลมแล้วแก้ไขให้ถูกต้อง โดยปกติการคำนวณแบบอ้างอิงเป็นวงกลมควรจะเกิดจากการตั้งใจให้คำนวณเพื่องานบางลักษณะเช่นการทำ Solver ครับ
Revised: March 31, 2020 at 19:41
ขอบคุณมากค่ะ…ทำให้เสียเวลาจริงๆๆ ค่ะ
ขอบคุณอาจารย์มากเลยคะ หาวิธีแก้อยู่นานมาเลยคะ