สรุป
- คำสั่ง IF จะส่งกลับค่าตามการประเมิน TRUE/FALSE และคุณสามารถซ้อนคำสั่ง IF ไว้ในคำสั่งอื่นเพื่อสร้างตรรกะที่ซับซ้อนได้
- คำสั่ง SWITCH จะประเมินนิพจน์และทดสอบกับค่าหลายค่าเพื่อค้นหาการจับคู่ จากนั้นจึงส่งคืนค่าที่สอดคล้องกัน
- ใช้คำสั่ง IF สำหรับการทดสอบตรรกะที่ซับซ้อนด้วยตัวดำเนินการที่แตกต่างกันมากมาย และใช้คำสั่ง SWITCH สำหรับการทดสอบความเท่าเทียมแบบง่าย
คำสั่ง IFเป็นฟังก์ชันตรรกะทั่วไปในExcel คำสั่ง SWITCHเป็นที่รู้จักน้อยกว่า แต่คุณสามารถใช้แทนคำสั่ง IF ได้ในบางกรณี มาสำรวจความแตกต่างระหว่าง IF และ SWITCH ใน Excelและกรณีการใช้งานของพวกมัน

คำสั่ง IF ใน Microsoft Excel คืออะไร
คำสั่ง IF ใน Excel เป็นฟังก์ชันที่ดำเนินการทดสอบตรรกะเพื่อตรวจสอบว่าเงื่อนไขที่ระบุเป็นจริงหรือเท็จ มันจะส่งคืนค่าตามผลการประเมิน ทำให้คุณสามารถตัดสินใจโดยอิงตามผลลัพธ์นั้นได้
คำสั่ง IF ขั้นพื้นฐาน
เริ่มต้นด้วยการดูคำสั่ง IF ขั้นพื้นฐานก่อนที่จะเจาะลึกเข้าไปในปัญหาที่ SWITCH พยายามจะแก้ไข
รูปแบบคำสั่ง IF ขั้นพื้นฐานมีดังนี้:
IF (logical_test, result_if_true, [result_if_false])
พารามิเตอร์ logical_test คือเงื่อนไขที่ฟังก์ชันจะทดสอบ และ result_if_true คือผลลัพธ์ที่ฟังก์ชันส่งคืนหากประเมินเป็น TRUE พารามิเตอร์ result_if_false คือผลลัพธ์ที่ฟังก์ชันส่งคืนหากผลลัพธ์เป็น FALSE
ในภาพหน้าจอด้านล่าง เราต้องการส่งคืนค่าผ่านหรือตกสำหรับคะแนน โดยขึ้นอยู่กับว่าค่าคะแนนการทดสอบในคอลัมน์ C มากกว่าหรือเท่ากับ 50

สูตรด้านล่างนี้จะเขียนอยู่ในเซลล์ C2:
IF(C2 >= 50, "Pass", "Fail")
และนี่คือผลลัพธ์:

คำสั่ง IF แบบซ้อนกัน
หากคุณต้องการตรวจสอบเงื่อนไขหลายเงื่อนไขในครั้งเดียว คุณสามารถใส่คำสั่ง IF ไว้ในคำสั่งอื่นได้
สิ่งเหล่านี้เรียกว่าคำสั่ง IF ซ้อนกัน และมีรูปแบบพื้นฐานดังนี้:
=IF(logical_test1, result_if_true1, IF(logical_test2, result_if_true2, result_if_false2))
พิจารณาตัวอย่างด้านล่าง โดยที่สีแต่ละสีในคอลัมน์ A (แดง เหลือง หรือเขียว) ต้องมีสถานะที่สอดคล้องกันในคอลัมน์ B (เช่น หยุด ระวัง ไป และไม่ทราบ)

ขั้นแรกเราจะใส่สูตรต่อไปนี้ในเซลล์ B2 สำหรับสีในเซลล์ A2:
=IF(A2 = "Red", "Stop", IF(A2 = "Yellow", "Caution", IF(A2 = "Green", "Go", "Unknown")))
เนื่องจาก A2 เป็นสีแดง จึงคืนค่า Stop ตามสูตรด้านบน เมื่อเราคัดลอกไปยังเซลล์อื่น แต่ละสีจะมีสถานะแตกต่างกัน

อย่างที่คุณเห็น ตรรกะสามารถสับสนได้อย่างรวดเร็วเมื่อคุณทำคำสั่ง IF ซ้อนกัน นั่นคือที่มาของคำสั่ง SWITCH ที่ทำให้เรื่องต่างๆ ง่ายขึ้นเล็กน้อย
คำสั่ง Switch ใน Excel คืออะไร
คำสั่ง SWITCH ใน Excel เป็นฟังก์ชันที่ค่อนข้างใหม่ ต้องใช้นิพจน์และทดสอบกับผลลัพธ์หลายๆ รายการในรูปแบบที่อ่านได้และมีโครงสร้างมากกว่าคำสั่ง IF ซ้อนกัน
รูปแบบพื้นฐานของคำสั่ง SWITCH คือ:
SWITCH (expression_to_test, test_value1, result_if_true1, [test_value2, result_if_true2,…], [value_if_no_match])
expression_to_test คือค่าที่จะถูกประเมินเทียบกับค่าทดสอบ (test_value1, test_value2 เป็นต้น) ถ้าค่าตรงกันระบบจะส่งคืนผลลัพธ์ที่สอดคล้องกัน ตัวอย่างเช่น หาก test_value1 ตรงกับนิพจน์ จะส่งคืน result_if_true1
คุณสามารถระบุพารามิเตอร์ value_if_no_match เพื่อส่งคืนค่าในกรณีที่ไม่พบการจับคู่
เนื่องจากคำสั่ง SWITCH สามารถลดความซับซ้อนของ IF ที่ซ้อนกันได้ เราจึงสามารถใช้ตัวอย่างสีจาก if ที่ซ้อนกันได้ นี่คือเวอร์ชัน SWITCH:
=SWITCH(A2, "Red", "Stop", "Yellow", "Caution", "Green", "Go", "Unknown")
ตามที่คุณเห็น สูตรนี้สามารถอ่านง่ายกว่าเมื่อใช้คำสั่ง SWITCH และทำงานเช่นเดียวกับเวอร์ชัน IF
การเปรียบเทียบ IF กับสวิตช์: กรณีการใช้งาน
เมื่อเปรียบเทียบกับคำสั่ง SWITCH แล้ว IF ใช้ได้ดีที่สุดเมื่อทำการทดสอบตรรกะที่ซับซ้อนที่เกี่ยวข้องกับเงื่อนไขต่างๆ หลายข้อ ยังทำงานได้ดีกับการทดสอบที่ใช้ตัวดำเนินการเชิงตรรกะต่างๆ ใน Excel (เช่น >, <, =, =""> <>, AND และ OR) ดังนั้นจึงมีความยืดหยุ่นมากกว่าและสามารถจัดการสถานการณ์ต่างๆ ได้มากกว่าคำสั่ง SWITCH
ในทางกลับกัน คำสั่ง SWITCH ทำงานได้ดีเมื่อการทดสอบตรรกะเกี่ยวข้องกับการดำเนินการความเท่าเทียมแบบง่ายและค่าคงที่ โดยที่รูปแบบพื้นฐานนั้นจะประเมินเฉพาะตัวดำเนินการความเท่าเทียมเท่านั้น หากคุณใช้คำสั่ง SWITCH เพื่อทดสอบตรรกะที่ซับซ้อน ก็ไม่ต่างจากการใช้คำสั่ง IF
ตัวอย่างของคำสั่ง IF ซ้อนกันที่ซับซ้อนนี้:
=IF(A1 >= 90, "Grade A", IF(A1 >= 75, "Grade B", "Grade C"))
คุณสามารถเขียนคำสั่ง SWITCH ได้ดังนี้:
=SWITCH(TRUE, A1 >= 90, "Grade A", A1 >= 75, "Grade B", A1 < 75,="" "grade="">
ที่นี่เราได้ตั้งค่านิพจน์ในการทดสอบเป็น TRUE ซึ่งช่วยให้สามารถทดสอบเงื่อนไขต่างๆ ได้หลายรายการโดยใช้ตัวดำเนินการมากกว่าตัวดำเนินการเท่ากับ แต่ในปัจจุบันตรรกะดูเหมือนจะไม่กระชับและอ่านได้ยากเท่ากับคำสั่ง SWITCH พื้นฐาน