แม้ IF ซ้อน IF จะให้คำตอบเดียวกันกับ IF ซ้อน And คิดแบบคนที่มีเหตุผล ต่างจากคิดแบบ Excel ยังไง
จากภาพนี้เป็นการตรวจสอบว่าเซลล์สีฟ้าด้านซ้าย กรอกค่าไว้เป็นเลข 1 2 3 ตามลำดับหรือไม่ ถ้าใช่ให้คืนค่าเป็นเลข 123 แต่ถ้าไม่ใช่ให้คืนค่า 0 ออกมาแทน
☝️ ผมเคยสอนไว้ว่า
แทนที่จะใช้ IF ซ้อน IF ซ้อน IF ซ้อน IF ซ้อน IF ซ้อน IF ซ้อน IF ซ้อน IF ซ้อน IF ซ้อน IF กันไปแบบนี้ ให้สังเกตว่าถ้าสิ่งที่ต้องการหาคำตอบของ IF ทุกตัว เหมือนกันทั้งหมด ไม่จำเป็นต้องใช้ IF ซ้อน IF แต่เปลี่ยนไปใช้ IF แค่สูตรเดียว แล้วใช้ AND มาช่วยแบบนี้
=IF(AND( เงื่อนไขที่1, เงื่อนไขที่2, เงื่อนไขที่3, เงื่อนไขที่4,...เงื่อนไขที่255), ผลที่ต้องการ, ผลที่ไม่ต้องการ)
🤔 แม้สูตร And ช่วยทำให้ใช้สูตร IF ได้สั้นลง ไม่ต้องเสียเวลาไปสร้าง IF ซ้อน IF แต่ต้องทราบไว้ด้วยว่า เงื่อนไขในสูตร And นั้น ทำงานพร้อมกัน ไม่ได้ไล่ตรวจสอบทีละเงื่อนไขที่สูตร IF ซ้อน IF ทำให้
ถ้าใช้ And ต้องตรวจสอบว่าทั้ง 3 เซลล์กรอกค่าไว้ถูกต้องทั้งหมดไหม
ถ้าใช้ IF จะตรวจสอบเงื่อนไขแรกว่า B2=1 ไหม ถ้าใช่จึงจะตรวจสอบเงื่อนไข B3=2 ไหม แต่ถ้าไม่ใช่ก็จะไม่เสียเวลาไปตรวจสอบเงื่อนไขโดยจะจบที่ 0 ให้เลย
👉 ถ้าเงื่อนไขเป็นแบบต้องผ่านทีละขั้น สูตร IF ซ้อน IF นอกจากจะสมเหตุสมผลกว่าแล้ว Excel ยังทำงานเร็วกว่า And อย่างมาก เพราะไม่ต้องเสียเวลาไปตรวจสอบเงื่อนไขตัวถัดไปแต่อย่างใด
เงื่อนไขตัวอย่างอื่นในชีวิตจริง เช่น
ถ้าสอบข้อเขียนและสอบสัมภาษณ์ผ่านจึงจะรับเข้าทำงาน ถ้าในการสอบจริงต้องดูผลการสอบข้อเขียนก่อนจึงจะให้ไปสอบสัมภาษณ์ต่อ อย่างนี้ให้ใช้ IF ซ้อน IF แต่ถ้าในการสอบนั้นให้สอบทั้งข้อเขียนและสอบสัมภาษณ์ต่อกันไปได้เลยโดยไม่ต้องรอดูผลสอบอันไหนก่อน แบบนี้ใช้ And มาช่วย
ถ้าคิดแบบมีเหตุผลว่าอะไรมาก่อนมาหลังในทำนองเดียวกัน
การที่เราปล่อยให้สูตร VLookup หรือ XLookup หรือสูตรอื่นใดทำงานหาค่าที่ต้องการไม่พบก่อนแล้วจึงค่อยไปแก้ Error จะเสียเวลาคำนวณของ Excel โดยใช่เหตุ แบบวัวหายล้อมคอก
ทางที่ดีกว่าควรหาทางทำให้สูตรนั้นๆทำงานได้อย่างมั่นใจว่าไม่มีทางเกิด error โดยป้องกันตั้งแต่ต้น
1. แทนที่จะกรอกค่าเองซึ่งอาจไม่ตรงกับค่าเดิมที่กรอกไว้ ให้ใช้ Data Validation แบบ List ช่วยดึงข้อมูลที่เคยกรอกไว้มาแสดงเป็นตัวเลือกให้ใช้ตรงตามที่มีอยู่ วิธีการนี้จะช่วยทำให้ไม่ต้องเสียเวลาไป cleaning แก้ไขข้อมูล
2. ใช้สูตร CountIF ช่วยนับว่าข้อมูลที่จะนำมาใช้ค้นหานั้นมีเพียงรายการเดียวไหม เพราะถ้ามีค่าซ้า แม้สูตร VLookup หรือ XLookup จะหาค่าออกมาได้แต่จะเป็นรายการแรกที่ค้นหาเจอเท่านั้น
ความคิดเห็น
แสดงความคิดเห็น