IFERROR ช่วยดักจับ Error ทุกประเภทที่เกิดขึ้นในสูตร (#N/A, #VALUE!, #REF!, #DIV/0!, #NUM!, #NAME?, #NULL!) แล้วเปลี่ยนเป็นค่าที่เราต้องการแทน
.
ที่เจ๋งคือมันช่วยให้รายงานและ Dashboard ดูสะอาด ไม่มี Error แสดงให้ผู้ใช้งานเห็น โดยถ้าสูตรไม่มี Error ก็จะ return ผลลัพธ์ปกติ
.
ส่วนตัวผมคิดว่าฟังก์ชันนี้เป็น “ตัวช่วยมหาเทพ” สำหรับคนทำรายงานเลยครับ 😎
| อาร์กิวเมนต์ | ชนิด | คำอธิบาย |
|---|---|---|
| value | Any | สูตรหรือค่าที่ต้องการตรวจสอบว่ามี Error หรือไม่ |
| value_if_error | Any | ค่าที่จะให้แสดงผลแทนเมื่อพบ Error (เช่น 0, “-“, “ไม่พบ”) |
IFERROR ช่วยดักจับ Error ทุกประเภทที่เกิดขึ้นในสูตร (#N/A, #VALUE!, #REF!, #DIV/0!, #NUM!, #NAME?, #NULL!) แล้วเปลี่ยนเป็นค่าที่เราต้องการแทน
.
ที่เจ๋งคือมันช่วยให้รายงานและ Dashboard ดูสะอาด ไม่มี Error แสดงให้ผู้ใช้งานเห็น ซึ่งเหมาะมากสำหรับดัก VLOOKUP/XLOOKUP ที่หาไม่เจอ ป้องกัน #DIV/0! จากการหารด้วยศูนย์ หรือแม้กระทั่งทำ Dashboard ให้ดูเป็นมืออาชีพ 😎
.
ส่วนตัวผมคิดว่าฟังก์ชันนี้เป็น “ตัวช่วยมหาเทพ” สำหรับคนทำรายงานเลยครับ เพราะถ้าไม่มี IFERROR รายงานเราก็จะเต็มไปด้วย #N/A, #DIV/0! ซึ่งดูไม่เป็นมืออาชีพเลย 😅
ใช้ IFERROR ครอบสูตรทั้งหมดใน Dashboard เพื่อเปลี่ยน Error ที่น่าตกใจให้กลายเป็นค่าว่าง ("") หรือขีด (-) ให้ดูมืออาชีพ
เมื่อแปลงข้อความเป็นวันที่ด้วย DATEVALUE ถ้าข้อความผิดรูปแบบจะเกิด #VALUE! ใช้ IFERROR เพื่อระบุบรรทัดที่มีปัญหา
VLOOKUP หา "XYZ" ไม่เจอใน Table → เกิด #N/A
IFERROR ดักจับแล้วเปลี่ยนเป็น "ไม่พบ" แทน ทำให้ Dashboard สะอาด ผู้ใช้งานก็เข้าใจง่ายขึ้นด้วยครับ 😊
100/0 เกิด #DIV/0! error ทันที
IFERROR ดักจับแล้วเปลี่ยนเป็น 0 แทน ป้องกัน error เมื่อตัวหารเป็น 0 หรือเซลล์ว่าง
ส่วนตัวผมใช้เทคนิคนี้บ่อยมากเวลาคำนวณเปอร์เซ็นต์ครับ 😅
100/5 = 20 ไม่มี error เกิดขึ้น
IFERROR ก็ return ผลลัพธ์ปกติ (20) ไม่ใช่ value_if_error นะครับ
คิดง่ายๆ ว่า IFERROR จะทำงานก็ต่อเมื่อเกิด error จริงๆ เท่านั้น
Nested IFERROR เจ๋งตรงนี้เลยครับ! 💡
หาใน MainTable ก่อน → ถ้าไม่เจอ → หาต่อใน BackupTable → ถ้าไม่เจอทั้งคู่ → แสดง "ไม่พบทั้งคู่"
เหมาะมากถ้ามีข้อมูลกระจายอยู่หลายแหล่งครับ
ใช้ "" (ข้อความว่าง) เป็น value_if_error
เซลล์จะดูว่างเปล่า ไม่มี #N/A แสดง เหมาะสำหรับ Dashboard ที่ต้องการความสะอาดตาครับ 😎
VALUE("abc") พยายามแปลงข้อความเป็นตัวเลข แต่ทำไม่ได้ → เกิด #VALUE!
IFERROR ดักจับแล้วเปลี่ยนเป็น 0 แทน ป้องกันการแสดง error เมื่อข้อมูลไม่ใช่ตัวเลข
คำถามนี้เจอบ่อยมากครับ 😅
IFERROR ดักจับ Error **ทุกประเภท** (#N/A, #VALUE!, #REF!, #DIV/0!, #NUM!, #NAME?, #NULL!) ส่วน IFNA ดักจับเฉพาะ #N/A เท่านั้น
ส่วนตัวผมแนะนำให้ใช้ IFNA สำหรับ VLOOKUP เพราะจะได้รู้ว่าเกิด error อื่นหรือไม่ (เช่น #REF! จากการลบคอลัมน์) ซึ่งอาจเป็นสัญญาณว่าสูตรเราเขียนผิดนะครับ
**ไม่ควร!** นี่เป็นข้อผิดพลาดที่คนมือใหม่ทำกันบ่อย 😭
ควรใช้ IFERROR เฉพาะจุดที่รู้สาเหตุของ Error (เช่น VLOOKUP หาไม่เจอ, หารด้วยศูนย์) ถ้าใช้พร่ำเพรื่อจะทำให้ไม่รู้ว่าสูตรเราเขียนผิด (เช่น #NAME? เพราะพิมพ์ชื่อฟังก์ชันผิด)
Error บางอันเป็นสัญญาณบอกว่าสูตรเราผิด ไม่ควรซ่อนมันครับ
ดักได้**ทุกประเภท**เลยครับ 😎
– #N/A (หาไม่เจอ – VLOOKUP, MATCH)
– #VALUE! (ประเภทข้อมูลผิด)
– #REF! (อ้างอิงผิด)
– #DIV/0! (หารด้วยศูนย์)
– #NUM! (ตัวเลขไม่ valid)
– #NAME? (พิมพ์ชื่อฟังก์ชันผิด)
– #NULL! (intersection ว่าง)
เรียกว่าดักหมดจริงๆ ครับ ไม่มีรอด 555
คนสับสนกันเยอะเหมือนกันนะเรื่องนี้ 😅
IFERROR → return **ค่าทดแทน**เมื่อเกิด error
ISERROR → return **TRUE/FALSE** บอกว่าเกิด error หรือไม่
IFERROR สะดวกกว่าเพราะไม่ต้องใช้ IF ครอบ เขียนสั้นกว่า แถมไม่ต้องเขียนสูตรซ้ำ 2 ครั้งด้วยครับ
มีตั้งแต่ **Excel 2007** ครับ
ก่อนหน้านั้นต้องใช้ =IF(ISERROR(สูตร), ค่าทดแทน, สูตร) ซึ่งต้องเขียนสูตรซ้ำ 2 ครั้ง… ยุ่งมาก แถมช้ากว่าด้วย 😭
โชคดีที่ตอนนี้ทุกคนใช้ Excel 2007 ขึ้นไปกันแล้ว IFERROR จึงใช้ได้เลย
**มีครับ!** นี่เป็นจุดเด่นของ XLOOKUP เลย 😎
XLOOKUP มี argument [if_not_found] ซึ่งทำหน้าที่เหมือน IFERROR สำหรับ #N/A โดยเฉพาะ ไม่ต้องใช้ IFERROR ครอบอีกต่อไป
เลยทำให้สูตรสั้นลงและอ่านง่ายขึ้นเยอะครับ
ฟังก์ชันที่ผู้เขียนโยงไว้กับ IFERROR จัดกลุ่มตามหมวด · ชี้ที่ชื่อใดชื่อหนึ่ง แล้วฟังก์ชันที่ใช้คู่กันจะมีจุดทอง
FALSE คืนค่าตรรกะ Boolean FALSE โดยตรง ซึ่งมีค่าเท่ากับ 0 ในการคำนวณทางคณิตศาสตร์
.
ที่เจ๋งคือทำให้สามารถนำไปใช้กับฟังก์ชันคำนวณได้โดยตรงโดยไม่ต้องแปลง มักใช้ร่วมกับ IF AND OR NOT และ IFERROR เพื่อควบคุม logic ของสูตรเงื่อนไข
.
ใน Excel คุณสามารถพิมพ์ FALSE โดยตรง (ไม่มีวงเล็บ) หรือเรียกเป็นฟังก์ชัน FALSE() ก็ได้ ผลลัพธ์เหมือนกันทุกประการ
IF เป็นฟังก์ชันตรรกะพื้นฐานที่ใช้ตัดสินใจสองทางตามเงื่อนไข ตรวจสอบว่าเงื่อนไขเป็น TRUE หรือ FALSE แล้วคืนค่าที่แตกต่างกันไปตามผลลัพธ์ สามารถใช้ได้กับการเปรียบเทียบตัวเลข ข้อความ หรือวันที่ และเป็นพื้นฐานสำคัญของการสร้างสูตรแบบมีเงื่อนไข
IFNA เป็นฟังก์ชันที่ช่วยจัดการ #N/A errors โดยแทนค่าเป็นข้อความหรือค่าอื่นที่คุณกำหนด เหมาะสำหรับการค้นหาข้อมูลที่อาจไม่พบผลลัพธ์
IFS ทดสอบหลายเงื่อนไขตามลำดับที่กำหนด และคืนค่าของเงื่อนไขแรกที่เป็น TRUE แล้วหยุดทำงานทันที โครงสร้างเป็นคู่ (เงื่อนไข, ผลลัพธ์) ซ้ำได้สูงสุด 127 คู่ ทำให้อ่านและเขียนง่ายกว่า Nested IF แบบซ้อนชั้น ควรใส่ TRUE เป็นเงื่อนไขสุดท้ายเพื่อกำหนดค่า default ป้องกัน #N/A error มีตั้งแต่ Excel 2019 และ Microsoft 365 เท่านั้น
LET ช่วยให้คุณกำหนดชื่อตัวแปร (Named Variables) ภายในสูตร Excel เพื่อเก็บค่าหรือผลลัพธ์การคำนวณ จากนั้นนำชื่อเหล่านั้นมาใช้ซ้ำในสูตรเดียวกัน
.
ทำให้สูตรที่ซับซ้อนอ่านง่ายขึ้นเยอะ ลดข้อผิดพลาดจากการเขียนซ้ำ และเพิ่มความเร็วเพราะแต่ละการคำนวณจะทำงานเพียงครั้งเดียว ไม่ว่าจะถูกอ้างอิงกี่ครั้งก็ตาม
MAKEARRAY สร้าง Dynamic Array ตามขนาดที่กำหนด (rows × cols) โดยใช้ LAMBDA function คำนวณค่าในแต่ละเซลล์ตามตำแหน่ง row และ column index (เริ่มที่ 1) ต่างจาก SEQUENCE ที่สร้างเฉพาะตัวเลขเรียงลำดับ MAKEARRAY สามารถสร้างข้อมูลได้หลากหลายรูปแบบตามการคำนวณที่กำหนดใน LAMBDA เช่น ตารางสูตรคูณ matrix ทางคณิตศาสตร์ pattern ข้อความ หรือค่าสุ่ม เหมาะสำหรับสร้าง dataset ขนาดใหญ่ที่มีรูปแบบเฉพาะ หรือ lookup table แบบ dynamic โดย LAMBDA จะถูกเรียกทำงานสำหรับทุกเซลล์ใน array ผลลัพธ์ ทำให้สร้างข้อมูลจำนวนมากได้อย่างรวดเร็วด้วยสูตรเดียว
SWITCH ประเมินนิพจน์หรือค่าหนึ่งค่า แล้วเปรียบเทียบกับรายการค่าที่กำหนดตามลำดับ เมื่อพบค่าที่ตรงกันจะส่งคืนผลลัพธ์ที่เชื่อมโยงทันที หากไม่ตรงกับค่าใดเลยสามารถกำหนด default value ได้ เหมาะสำหรับแทนที่ nested IF หลายชั้นด้วยไวยากรณ์ที่อ่านง่ายกว่ามาก
ISERROR ตรวจสอบค่าว่าเป็น Error หรือไม่ โดยครอบคลุม Error ทุกประเภทใน Excel ได้แก่ #N/A, #VALUE!, #REF!, #DIV/0!, #NUM!, #NAME?, และ #NULL! มักใช้คู่กับ IF เพื่อแสดงข้อความเตือนหรือจัดการกับ Error ก่อนที่จะแสดงผล
ISNA ตรวจสอบเฉพาะ Error #N/A ที่เกิดจากการค้นหาไม่เจอในฟังก์ชันต่างๆ เช่น VLOOKUP หรือ MATCH มีประโยชน์มากเมื่อต้องแยกแยะระหว่าง "หาไม่เจอ" กับ "สูตรคิดผิด"
ฟังก์ชัน NA() ใช้สำหรับส่งคืนค่าความผิดพลาด #N/A ซึ่งหมายถึง 'ค่าไม่พร้อมใช้งาน' (No Value Available) โดยไม่มีอาร์กิวเมนต์ใดๆ ใช้เพื่อทำเครื่องหมายเซลล์ที่ข้อมูลขาดหายไปหรือเพื่อหลีกเลี่ยงการรวมเซลล์ว่างในการคำนวณ
REGEXTEST เป็นฟังก์ชันสำหรับทดสอบว่าข้อความตรงกับรูปแบบ Regular Expression ที่กำหนดหรือไม่ คืนค่า TRUE หรือ FALSE เหมาะสำหรับการตรวจสอบความถูกต้องของข้อมูล (Validation) เช่น ที่อยู่อีเมล เบอร์โทรศัพท์ หรือรูปแบบข้อมูลอื่น ๆ
T ฟังก์ชันที่ตรวจสอบว่าค่าเป็นข้อความหรือไม่ ถ้าใช่ส่งกลับข้อความเดิม ถ้าไม่ใช่ส่งกลับค่าว่าง ใช้ปลอดภัยกว่าการต่อข้อความตรงๆ เมื่อไม่แน่ใจว่าเซลล์ต้นทางเก็บอะไรอยู่
ตรวจสอบว่าตัวเลขมากกว่าหรือเท่ากับค่าเกณฑ์หรือไม่ คืนค่า 1 (จริง) หรือ 0 (เท็จ)
SQRT คำนวณรากที่สองของตัวเลข ใช้ได้กับจำนวนบวกเท่านั้น ถ้าเป็นจำนวนลบจะ error #NUM!
WEBSERVICE ส่งคำขอ GET ไปยัง URL ของ web service (API) บนอินเทอร์เน็ตหรือ Intranet และส่งกลับข้อมูลที่ได้รับ ใช้เพื่อดึงข้อมูลแบบ real-time เช่น ราคาหุ้น อัตราแลกเปลี่ยน ข้อมูลสภาพอากาศ โดยปกติใช้ร่วมกับ FILTERXML เพื่อแยกข้อมูลที่ต้องการจากผลลัพธ์ XML และกับ ENCODEURL เพื่อเข้ารหัส URL ให้ปลอดภัย
Comments
อีเมลของคุณจะไม่ถูกเผยแพร่