เป็นเงื่อนไขที่กำหนดซ้อนเข้าไปเพื่อตัดสินใจในทุกเงื่อนไขพร้อมกันไป เกิดเป็นโครงสร้างสูตรตามนี้
=IF(เงื่อนไขที่ 1, IF(เงื่อนไขที่ 2, ผลกรณีใช่ของเงื่อนไขที่ 1 และ 2, ผลกรณีไม่ใช่ของเงื่อนไขที่ 2), ผลกรณีไม่ใช่ของเงื่อนไขที่ 1)
หากผลกรณีที่ใช่ของทุกเงื่อนไขเป็นค่าเดียวกัน ส่วนผลกรณีที่ไม่ใช่ของเงื่อนไขที่ 1 และผลกรณีที่ไม่ใช่ของเงื่อนไขที่ 2 เป็นค่าเดียวกัน แทนที่จะใช้สูตร IF ซ้อนกันหลายสูตร ให้ใช้สูตร And หรือ Or มาช่วยในสูตร IF เพียงสูตรเดียวได้ดังนี้
=IF( And( เงื่อนไขที่ 1,เงื่อนไขที่ 2), ผลกรณีใช่, ผลกรณีไม่ใช่)
=IF( OR( เงื่อนไขที่ 1,เงื่อนไขที่ 2), ผลกรณีใช่, ผลกรณีไม่ใช่)
หมายเหตุ
- สูตร And จะคืนค่าเป็นจริงต่อเมื่อทุกเงื่อนไขเป็นจริงพร้อมกัน หากเงื่อนไขใดเงื่อนไขหนึ่งเป็นเท็จ จะคืนค่าเป็นเท็จ (จำว่า False เป็นลักษณะเด่น)
- สูตร OR จะคืนค่าเป็นเท็จต่อเมื่อทุกเงื่อนไขเป็นเท็จพร้อมกัน หากเงื่อนไขใดเงื่อนไขหนึ่งเป็นจริง จะคืนค่าเป็นจริง (จำว่า True เป็นลักษณะเด่น)
ตัวอย่างการใช้ IF แบบกำหนดเงื่อนไขแตกต่อกรณีที่ใช่ในการป้องกันสูตรลับ
สมมติว่าเราต้องการบวกเลข 1 กับเลข 2 ในเซลล์ B2 และ C2 เข้าด้วยกัน แต่ก่อนจะยอมให้สูตร B2+C2 ทำงานได้ตามปกติ ต้องผ่านการกรอกรหัสลงไปในเซลล์ B4 และ B5 เป็นเลข 123 และ 999 ตามลำดับให้ถูกต้องเรียบร้อยก่อน
ถ้าสร้างสูตร IF ซ้อน IF จะได้สูตรตามเซลล์ D2
=IF( B4=123, IF(B5=999, B2+C2, 0), 0)
หรือใช้สูตร And มาใช้งานร่วมด้วย กลายเป็นสูตร IF เพียงสูตรเดียวดังนี้
=IF( AND(B4=123,B5=999), B2+C2, 0)
ตัวอย่างการใช้ IF แบบกำหนดเงื่อนไขแตกต่อกรณีที่ใช่ในการรับเงินในช่วงวันที่กำหนด
หากต้องการรับเงิน 100 บาท ระหว่างวันที่ 2-5 กำหนดให้ใช้ Range Name ในตารางต่อไปนี้
- B3:B8 ชื่อ From
- C3:C8 ชื่อ To
- D3:D8 ชื่อ Amount
- E2:K2 ชื่อ Date
เซลล์ E3 เป็นสูตรรับเงินในช่วงวันที่ต้องการตามนี้
=IF( Date>=From, IF(Date<=To,Amount,0), 0)
หรือ
=IF( AND(Date>=From,Date<=To), Amount, 0)
ข้อสังเกต
ตัวอย่างนี้ใช้สูตร And มาช่วยเพราะต้องการให้คืนค่าเป็น True เฉพาะในช่วงวันที่ 2-5 เท่านั้น (ดูเซลล์ E8:K8)