หน้าแรก บทความ Microsoft
Microsoft

ซ้อนฟังก์ชัน (Nested Functions) ใน Excel เขียนสูตรหลายขั้นในเซลล์เดียว

เผยแพร่ 29 ส.ค. 69

บางโจทย์ต้องคิดหลายขั้นกว่าจะได้คำตอบ เช่น “หาค่าเฉลี่ยแล้วปัดเศษ” หรือ “ค้นหาราคา ถ้าไม่เจอให้ขึ้นว่าไม่พบ” แทนที่จะแยกเป็นหลายเซลล์ เราเขียนรวบในเซลล์เดียวได้ด้วยการ ซ้อนฟังก์ชัน (Nested Functions) คือเอาผลลัพธ์ของฟังก์ชันหนึ่งไปเป็นข้อมูลป้อนให้อีกฟังก์ชันหนึ่ง บทความนี้อธิบายหลักการอ่าน เขียน และไล่ตรวจสูตรซ้อนไม่ให้งง

การซ้อนฟังก์ชันคืออะไร

ปกติฟังก์ชันหนึ่งจะรับข้อมูลเข้า (argument) แล้วคืนผลลัพธ์ออกมา การซ้อนฟังก์ชันคือการเอาฟังก์ชันทั้งตัวไปวางไว้ในช่อง argument ของอีกฟังก์ชัน Excel จะคำนวณจากชั้นในสุดออกมาชั้นนอกสุด เหมือนแกะหัวหอมทีละชั้น

เช่น =ROUND(AVERAGE(B2:B5), 0) Excel จะหา AVERAGE(B2:B5) ให้เสร็จก่อน ได้ตัวเลขหนึ่งออกมา แล้วค่อยเอาตัวเลขนั้นส่งให้ ROUND ปัดเศษ

ตัวอย่างที่ 1: เฉลี่ยแล้วปัดเศษในเซลล์เดียว

B6fx=ROUND(AVERAGE(B2:B5),0)
A B
1 วิชา คะแนน
2 ภาษาไทย 78
3 คณิต 81
4 วิทย์ 74
5 อังกฤษ 66
6 เฉลี่ย (ปัดเศษ) 75

ชั้นในสุด AVERAGE(B2:B5) ได้ 74.75 จากนั้น ROUND(74.75, 0) ปัดเป็น 75 อ่านเพิ่มเรื่องการปัดเศษได้ที่ ฟังก์ชัน ROUND และ AVERAGE

ตัวอย่างที่ 2: IF ซ้อน IF สำหรับตัดเกรด

เมื่อมีเงื่อนไขหลายระดับ ให้วาง IF ตัวถัดไปไว้ในช่อง “ค่าถ้าเงื่อนไขเป็นเท็จ” ของ IF ตัวก่อนหน้า

C2fx=IF(B2>=80,"A",IF(B2>=70,"B",IF(B2>=60,"C","D")))
A B C
1 ชื่อ คะแนน เกรด
2 ก้อง 83 A
3 แนน 72 B
4 เจน 58 D

Excel เช็คจากซ้ายไปขวา ถ้า B2>=80 จริงก็หยุดที่ “A” ทันที ถ้าไม่จริงจึงไปเช็คเงื่อนไขถัดไป สูตรแบบนี้อ่านยากขึ้นเมื่อมีหลายชั้น จึงมีสูตร IFS ที่เขียนเงื่อนไขเรียงกันได้โดยไม่ต้องซ้อนวงเล็บซ้อนกันเป็นพืด

ตัวอย่างที่ 3: ซ้อนเพื่อกัน Error

การซ้อนที่ใช้บ่อยที่สุดคือเอาสูตรค้นหาไปไว้ข้างใน แล้วครอบด้วยตัวจับ Error ข้างนอก

C2fx=IFERROR(VLOOKUP(A2,$E$2:$F$9,2,FALSE),"ไม่พบสินค้า")
A B C
1 รหัส ชื่อ ราคา
2 P05 หูฟัง ไม่พบสินค้า
3 P01 เมาส์ 450

ชั้นใน VLOOKUP พยายามหา P05 ในตารางราคา ถ้าไม่เจอจะเป็น #N/A ชั้นนอก IFERROR ดักไว้แล้วเปลี่ยนเป็นข้อความแทน

ตัวอย่างที่ 4: ทำความสะอาดข้อความ 2 ขั้น

B2fx=TRIM(SUBSTITUTE(A2,"-"," "))
A B
1 ข้อมูลดิบ จัดรูปแบบแล้ว
2 089-123-4567 089 123 4567

ชั้นใน SUBSTITUTE เปลี่ยนขีด - เป็นเว้นวรรค ชั้นนอก TRIM ตัดช่องว่างส่วนเกินทิ้ง

เทคนิคเขียนและอ่านสูตรซ้อนไม่ให้งง

ซ้อนได้ลึกแค่ไหน และเมื่อไรควรเลิกซ้อน

ทางเทคนิค Excel ซ้อนฟังก์ชันได้สูงสุด 64 ชั้น แต่ในทางปฏิบัติถ้าเกิน 3–4 ชั้นก็เริ่มอ่านยากและแก้ยาก ทางเลือกที่ดีกว่าคือ

ก่อนเขียนสูตรซ้อน แนะนำให้เข้าใจเรื่อง ลำดับการคำนวณในสูตร ก่อน จะช่วยให้วางวงเล็บถูกตำแหน่ง

หมายเหตุ: บทความนี้เขียนและเรียบเรียงโดย AI

← กลับหน้าบทความ
Line