วิธีแก้ Excel Error ที่ทำให้ Excel คำนวณเร็วขึ้น

✋ วิธีแก้ Excel Error ที่ทำให้ Excel คำนวณเร็วขึ้น
.
โดยทั่วไปเวลาที่สูตรใดเกิด error ขึ้นมา เรามักจะแก้ error โดยซ้อนสูตรแบบนี้กันใช่ไหมครับ
.
=IF( IsError(สูตรนั้น), 0, สูตรนั้น)
หรือถ้าใช้ Excel 2007 เป็นต้นมาก็ใช้สูตรสั้นลงแบบนี้
=IFError(สูตรนั้น, 0)
.
ถ้าสูตรนั้นเป็นสูตรบวกลบคูณหารกันธรรมดาก็ไม่น่าห่วงเท่าไร แต่ถ้าเป็นสูตรที่ใช้ค้นหาข้อมูลอย่าง XLookup, VLookup, Match ซึ่งปกติจะเสียเวลาค้นหาค่าช้ากว่า การแก้สูตรแบบข้างต้นนี้เป็นการปล่อยให้ Excel "เสียเวลาคำนวณให้เสร็จก่อน" แล้วเมื่อพบว่าเป็น error จึงจัดการเปลี่ยน error ให้เป็นเลข 0 แทน
.
หมายเหตุ กรณีที่ค่าเดิมเป็นเลข ควรเปลี่ยนให้เป็น 0 แทน แต่ถ้าค่าเดิมเป็น Text อาจใช้ข้อความอื่นเช่น No data มาแสดงแทน หรือใส่ "" เพื่อแสดงเป็นช่องว่าง
.
☝️ ถ้ามีจำนวนเซลล์ที่แก้ error ไม่มากนัก จะใช้วิธีแก้ error ข้างต้นก็ได้ เพราะทำให้ช้าลงนิดหน่อยที่แทบไม่รู้สึกอะไร แต่ถ้ามีจำนวนเซลล์มากขึ้นล่ะ Excel จะคำนวณช้าลงๆ

XLookupError
.
สูตร XLookup จัดการแก้ error ได้ในตัวสูตร เช่น ตามแบบที่ 1 ในภาพนี้
=XLOOKUP( $F$3, $B$3:$B$7, $C$3:$D$7, "No data")
ซึ่งถ้าเกิด error ขึ้นมาก็จะแสดงคำว่า No data แทน และที่น่าสนใจมากก็คือ ตัวสูตรจะไม่ขยายตัวไปเสียเวลาหาค่าอื่นต่อไป
.
ถ้าอยากจะทำให้ XLookup เปลี่ยน error แต่ละเซลล์เป็นคำว่า No Data หรือเลข 0 ก็ต้องสร้างสูตร XLookup แยกออกมาทีละเซลล์ตามแบบที่ 2 กับ 3
แบบที่ 2 =XLOOKUP( $F$3, $B$3:$B$7, $C$3:$C$7, "No data")
แบบที่ 3 =XLOOKUP( $F$3, $B$3:$B$7, $D$3:$D$7, 0)
.
🤓 แต่การแก้ error ตามแบบที่ 1-3 นี้อย่างไรก็ตามก็ยังต้องเสียเวลาคำนวณ ยอมให้สูตร XLookup ทำงานก่อนอยู่ดี
.
🫶 ทางที่ดีกว่าคือป้องกันไม่ให้สูตร XLookup หรือ VLookup เสียเวลาไปคำนวณตั้งแต่แรกเลย โดยใช้สูตร CountIF ในเซลล์สีเหลือง หาก่อนว่ามีค่าที่ต้องการหานั้นเก็บไว้หรือเปล่า จากนั้นจึงสร้างสูตรตามแบบที่ 4-7
=IF( $B$12=0, "No data", XLOOKUP($F$3,$B$3:$B$7,$C$3:$C$7) )
=IF( $B$12=0, 0, XLOOKUP($F$3,$B$3:$B$7,$D$3:$D$7) )
=IF( $B$12=0, "No data", VLOOKUP($F$3,MyData,2,0) )
=IF( $B$12=0, 0, VLOOKUP($F$3,MyData,3,0) )
.
สูตร IF จะครวจสอบผลของสูตร CountIF ทำหน้าที่นับว่ามีค่านั้นไหม ถ้านับแล้วมีค่า 0 แสดงว่าไม่มีก็จะแสดงคำว่า No data หรือเลข 0 แต่ถ้ามีค่าบันทึกไว้จึงจะเสียเวลาไปใช้ XLookup หรือ VLookup
.
ที่สำคัญ คือ ให้แยกสูตร CountIF ไปคำนวณเพียงครั้งเดียวให้เสร็จก่อน อย่าเอาสูตร CountIF ไปซ้อนในสูตร IF ล่ะครับ
.
Download ตัวอย่างได้จาก

https://drive.google.com/file/d/1-6mfPEO8t62EyVJkV9W4af78ZvdPgQoN/view?usp=sharing

Related Articles

© Copyright 1999

สงวนลิขสิทธิ์ตามกฎหมาย

ห้ามนำข้อความหรือส่วนหนึ่งส่วนใดของบทความหรือวิดีโอหรือรูปภาพไปใช้เพื่อการค้าขาย หรือเพื่อประโยชน์ส่วนตัว

อนญาตให้นำไปใช้เพื่อสาธารณประโยชน์โดยขอให้ระบุที่มาและชื่อผู้เขียนกำกับไว้ด้วยเสมอ

ลิงก์เว็บ Excel Expert Training

เว็บสำหรับ เรียนออนไลน์

เว็บสำหรับ เรียนแบบกลุ่ม-ส่วนตัว

ติดตามข่าวสารได้จาก facebook

ถามปัญหาได้ที่ กลุ่มคนรัก Excel

และไลน์กลุ่ม Excel Expert Group

ที่อยู่และการติดต่อ

สมเกียรติ ฟุ้งเกียรติ 7/1 รามคำแหง ซอย 35 หัวหมาก บางกะปิ กทม 10240 โทร 097-140-5555, 02-718-9331

Excel@ExcelExpertTraining.com

sfk234x234