Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> ซอฟต์แวร์ >> Office

เชี่ยวชาญ Excel: สร้าง Nested IF ซ้อนกันในเซลล์เดียว

Nested IF statements หรือ IF ซ้อนกัน เป็นหนึ่งในเครื่องมือสูตรที่มีประโยชน์ที่สุดใน Excel พวกมันช่วยให้คุณทดสอบเงื่อนไขหลายเงื่อนไขในสูตรเดียวและตัดสินใจตามสถานการณ์ต่างๆ Nested IF ทำงานตามลำดับเฉพาะและคืนค่าผลลัพธ์ที่ต่างกัน—ทั้งหมดภายในเซลล์เดียว

ในบทช่วยสอนนี้ เราจะแสดงวิธีสร้าง Nested IF statements ในเซลล์เดียว

Nested IF Statement คืออะไร?

Nested IF หมายถึงการวางฟังก์ชัน IF หนึ่งไว้ภายในอีก IF หนึ่ง

Syntax พื้นฐานของ IF:

=IF(logical_test, value_if_true, value_if_false)
  • logical_test: เงื่อนไขที่ต้องการตรวจสอบ
  • value_if_true: ค่าที่คืนกลับถ้าเงื่อนไขเป็นจริง
  • value_if_false: ค่าที่คืนกลับถ้าเป็นเท็จ

โครงสร้าง Nested IF:

Nested IF วาง IF statement อีกตัวหนึ่งไว้ในส่วน value_if_false ทำให้คุณทดสอบเงื่อนไขเพิ่มเติมเมื่อเงื่อนไขแรกไม่เป็นจริง

=IF(condition1, result1, IF(condition2, result2, result3))

อ่านว่า: "ถ้า condition1 เป็นจริง ให้คืน result1 มิฉะนั้น ถ้า condition2 เป็นจริง ให้คืน result2 ถ้าทั้งคู่ไม่เป็นจริง ให้คืน result3" Excel ประเมินเงื่อนไขจากซ้ายไปขวาและหยุดที่ผลลัพธ์ TRUE แรกที่พบ

การสร้าง Nested IF ในเซลล์เดียว

มาสร้างสูตรที่กำหนดเกรดตัวอักษรตามคะแนนสอบ:

กฎการให้เกรด:

  • ≥ 90 → A
  • ≥ 80 → B
  • ≥ 70 → C
  • ≥ 60 → D
  • < 60 → F

ขั้นตอน 1: เริ่มจากเงื่อนไขสูงสุด

  • เลือกเซลล์และใส่สูตรต่อไปนี้

สูตรนี้ตรวจสอบเฉพาะเกรด A

ขั้นตอน 2: เพิ่มเงื่อนไขที่สอง

=IF(C2>=90, "A", IF(C2>=80, "B", ""))

ตอนนี้ Excel ตรวจสอบ:

  • คะแนน ≥ 90 หรือไม่?
  • ถ้าไม่ใช่ คะแนน ≥ 80 หรือไม่?

ขั้นตอน 3: ต่อยอดการซ้อน

=IF(C2>=90, "A", IF(C2>=80, "B", IF(C2>=70, "C", "")))

ขั้นตอน 4: เสร็จสมบูรณ์สูตร

=IF(C2>=90, "A", IF(C2>=80, "B", IF(C2>=70, "C", IF(C2>=60, "D", "F"))))
  • ลากสูตรลงไปเติมเซลล์อื่นๆ

นี่คือ Nested IF สมบูรณ์ในเซลล์เดียว สูตรนี้กำหนดเกรดตามคะแนน ลำดับสำคัญมาก: ถ้าคุณตรวจสอบ ≥ 60 ก่อน ทุกคะแนนมากกว่า 60 จะคืนค่า D

ทำให้ Nested IF อ่านง่ายขึ้น

สำหรับ Nested IF ที่ซับซ้อน พิจารณาใช้การขึ้นบรรทัดใหม่ในแถบสูตรเพื่อเพิ่มความอ่านง่าย:

  • วางเคอร์เซอร์หน้า IF ตัวที่สอง
  • กด Alt + Enter ภายในแถบสูตร
  • ทำซ้ำสำหรับส่วนที่เหลือของสูตร
=IF(C2>=90, "A",
    IF(C2>=80, "B",
        IF(C2>=70, "C",
            IF(C2>=60, "D", "F"))))

Excel ไม่สนใจช่องว่าง แต่มนุษย์สนใจ

Nested IF กับเงื่อนไขข้อความ

ใช้โบนัสตามแผนกตามช่วงต่อไปนี้:

  • Sales → 10%
  • Marketing → 7%
  • อื่นๆ → 5%

สมมติว่าแผนกอยู่ใน C2:

=IF(C2="Sales", 0.1, IF(C2="Marketing", 0.07, 0.05))

สูตร Nested IF นี้คืนค่าอัตราโบนัสสำหรับแต่ละแผนก

การนำ AND/OR เข้าไปใน Nested IF

Nested IFs สามารถรวมกับฟังก์ชันอย่าง AND, OR หรือการคำนวณได้

กฎค่าขนส่ง (ในเซลล์เดียว):

  • ถ้า Country = USA และ OrderTotal ≥ 80 → Free Shipping
  • Else ถ้า Country = USA และ OrderTotal < 80 → $6 Shipping
  • Else ถ้า Country ≠ USA และ OrderTotal ≥ 200 → International Free Shipping
  • Else → International $15 Shipping

เลือกเซลล์และใส่สูตรต่อไปนี้:

=IF(AND(C2="USA",D2>=80),"Free Shipping",
    IF(AND(C2="USA",D2<80),"$6 Shipping",
        IF(AND(C2<>"USA",D2>=200),"International Free Shipping","International $15 Shipping")))

สูตรนี้ตรวจสอบเงื่อนไขแต่ละข้อตามลำดับและคืนค่าป้ายชื่อขนส่งที่ตรงกับเงื่อนไขแรก แล้วหยุด ถ้าไม่มีเงื่อนไขไหนตรง จะใช้ผลลัพธ์ "else" สุดท้าย: International $15 Shipping

กฎส่วนลด (OR):

  • ถ้า VIP หรือ OrderTotal ≥ 500 → 20%
  • Else ถ้า OrderTotal ≥ 200 → 15%
  • Else ถ้า OrderTotal ≥ 100 → 10%
  • Else → 5%

เลือกเซลล์และใส่สูตรต่อไปนี้:

=IF(OR(E2="VIP",D2>=500),0.2,
    IF(D2>=200,0.15,
        IF(D2>=100,0.1,0.05)))

Excel ตรวจสอบก่อนว่าลูกค้าเป็น VIP หรือยอดสั่งซื้อ ≥ 500 ถ้าใช่ คืนค่า 20% ถ้าไม่ ตรวจสอบ ≥ 200 สำหรับ 15% แล้ว ≥ 100 สำหรับ 10% มิฉะนั้นคืนค่า 5%

เมื่อไหร่ควรใช้ Nested IF?

ใช้ Nested IF เมื่อ:

  • เงื่อนไขต้องตรวจสอบตามลำดับ
  • ตรรกะเป็นแบบกฎเกณฑ์ (rule-based)
  • ผลลัพธ์ขึ้นอยู่กับช่วง ไใช่การจับคู่ที่แน่นอน

หลีกเลี่ยง Nested IF เมื่อ:

  • เงื่อนไขเป็นอิสระต่อกัน—ใช้ฟังก์ชัน IFS (Excel 2016+)
  • สำหรับการค้นหาแบบช่วง ใช้ฟังก์ชัน XLOOKUP
  • สำหรับการจับคู่ที่แน่นอน ใช้ฟังก์ชัน SWITCH
  • ถ้าตรรกะซับซ้อนเกินไป ใช้คอลัมน์ช่วย (helper columns)

ข้อผิดพลาดทั่วไปและการแก้ไข

  • #VALUE! error: วงเล็บไม่ตรงหรืออาร์กิวเมนต์ไม่ถูกต้อง นับวงเล็บเปิด/ปิด (ต้องเท่ากัน)
  • ข้อบกพร่องทางตรรกะ: ทดสอบกรณีขอบ (เช่น คะแนน 80 พอดีในระบบเกรด)
  • ลำดับผิด: ตรวจสอบจากสูงไปต่ำเสมอ
  • วงเล็บปิดขาด: Excel ต้องการวงเล็บปิดหนึ่งต่อ IF หนึ่ง
  • Nested IFs มากเกินไป: Excel รองรับ IF เยอะ แต่อ่านยากขึ้นเร็ว ถ้าตรรกะเกิน 5-6 เงื่อนไข พิจารณา IFS หรือตารางค้นหา

สรุป

โดยปฏิบัติตามบทช่วยสอนนี้ คุณสามารถสร้าง Nested IF statements ในเซลล์เดียวได้ Nested IF เป็นเครื่องมือทรงพลังสำหรับจัดการหลายเงื่อนไข แต่ต้องการลำดับและทดสอบที่ถูกต้อง มันให้ Excel ตัดสินใจหลายอย่างในเซลล์เดียวโดยทดสอบเงื่อนไขตามลำดับและคืนค่าผลลัพธ์ที่ต่างกันสำหรับแต่ละกรณี วางแผนตรรกะในลำดับที่ถูกต้องและเก็บผลลัพธ์ else สุดท้ายไว้ท้ายสุด ด้วยการฝึกฝน คุณสามารถสร้างตรรกะตัดสินใจที่ซับซ้อนซึ่งจัดการสถานการณ์หลากหลายได้อย่างมีประสิทธิภาพ ถ้าสูตรเริ่มยาวหรือสับสน มันเป็นสัญญาณว่าควรเปลี่ยนไปใช้ IFS, SWITCH หรือตารางค้นหา ซึ่งอ่านและบำรุงรักษาง่ายกว่า