ใน Excel ฟังก์ชัน IF ช่วยให้คุณสามารถทําการเปรียบเทียบตรรกะระหว่างค่าและสิ่งที่คุณคาดหวังโดยการทดสอบเงื่อนไขและส่งกลับผลลัพธ์ถ้าเงื่อนไขนั้นเป็น True หรือ False
-
=IF(ถ้ามีบางอย่างเป็น True ให้ดำเนินการอย่างหนึ่ง ถ้าไม่มี ให้ดำเนินการอีกอย่างหนึ่ง)
แต่ถ้าคุณจําเป็นต้องทดสอบเงื่อนไขหลายข้อ ที่สมมติว่าเงื่อนไขทั้งหมดต้องเป็น True หรือ False (AND) หรือเงื่อนไขเพียงหนึ่งข้อต้องเป็น True หรือ False (OR) หรือถ้าคุณต้องการตรวจสอบว่าเงื่อนไข ไม่ ตรงกับเกณฑ์ของคุณหรือไม่ ฟังก์ชันทั้ง 3 ฟังก์ชันสามารถใช้ได้ด้วยตัวเอง แต่โดยทั่วไปแล้วจะเห็นฟังก์ชันเหล่านั้นจับคู่กับฟังก์ชัน IF
ใช้ฟังก์ชัน IF พร้อมกับ AND, OR และ NOT เพื่อทำการประเมินหลายว่าเงื่อนไขต่างๆ เป็น True หรือ False
ไวยากรณ์
-
IF(AND()) - IF(AND(logical1, [logical2], ...), value_if_true, [value_if_false]))
-
IF(OR()) - IF(OR(logical1, [logical2], ...), value_if_true, [value_if_false]))
-
IF(NOT()) - IF(NOT(logical1), value_if_true, [value_if_false]))
ชื่ออาร์กิวเมนต์ |
คำอธิบาย |
|
logical_test (จำเป็น) |
เงื่อนไขที่คุณต้องการทดสอบ |
|
value_if_true (จำเป็น) |
ค่าที่คุณต้องการให้ส่งกลับถ้าผลลัพธ์ของ logical_test เป็น TRUE |
|
value_if_false (มีหรือไม่ก็ได้) |
ค่าที่คุณต้องการให้ส่งกลับถ้าผลลัพธ์ของ logical_test เป็น FALSE |
|
ต่อไปนี้เป็นภาพรวมของวิธีการจัดโครงสร้างฟังก์ชัน AND, OR และ NOT ทีละฟังก์ชัน เมื่อคุณรวมแต่ละรายการเข้ากับคําสั่ง IF คําสั่งเหล่านั้นจะอ่านดังนี้:
-
AND – =IF(AND(ถ้ามีบางอย่างเป็น True อย่างอื่นเป็น True), ค่าถ้าเป็น True, ค่าถ้าเป็น False)
-
OR – =IF(OR(ถ้ามีบางอย่างเป็น True อย่างอื่นเป็น True), ค่าถ้าเป็น True, ค่าถ้าเป็น False)
-
NOT – =IF(NOT(มีบางอย่างเป็น True), ค่าถ้าเป็น True, ค่าถ้าเป็น False)
ตัวอย่าง
ต่อไปนี้คือตัวอย่างของคําสั่ง IF(AND()), IF(OR()) และ IF(NOT()) แบบซ้อนกันทั่วไปใน Excel ฟังก์ชัน AND และ OR สามารถสนับสนุนเงื่อนไขแต่ละข้อได้ถึง 255 เงื่อนไข แต่การใช้สูตรที่ซ้อนกันและซับซ้อนอาจสร้าง ทดสอบ และบํารุงรักษาได้ยากมาก ฟังก์ชัน NOT ใช้เงื่อนไขเพียงข้อเดียวเท่านั้น
ต่อไปนี้คือสูตรที่สะกดตามตรรกะของสูตรนั้น:
สูตร |
คำอธิบาย |
---|---|
=IF(AND(A2>0,B2<100),TRUE, FALSE) |
ถ้า A2 (25) มีค่ามากกว่า 0 และ B2 (75) น้อยกว่า 100 จะส่งกลับเป็นค่า TRUE มิฉะนั้นจะส่งกลับเป็นค่า FALSE ในกรณีนี้ ทั้งสองเงื่อนไขเป็นจริง จึงส่งกลับค่า TRUE |
=IF(AND(A3="สีแดง",B3="สีเขียว"),TRUE,FALSE) |
ถ้า A3 ("สีน้ําเงิน") = "สีแดง" และ B3 ("สีเขียว") เท่ากับ "สีเขียว" จะส่งกลับเป็นค่า TRUE มิฉะนั้นจะส่งกลับเป็นค่า FALSE ในกรณีนี้ เฉพาะเงื่อนไขแรกเป็นจริง จึงส่งกลับค่า FALSE |
=IF(OR(A4>0,B4<50),TRUE, FALSE) |
ถ้า A4 (25) มีค่ามากกว่า 0 หรือ B4 (75) มีค่าน้อยกว่า 50 จะส่งกลับเป็นค่า TRUE มิฉะนั้นจะส่งกลับเป็นค่า FALSE ในกรณีนี้ เฉพาะเงื่อนไขแรกเท่านั้นที่เป็น TRUE แต่เนื่องจาก OR ต้องการให้อาร์กิวเมนต์เป็นจริงเพียงหนึ่งอาร์กิวเมนต์เท่านั้น สูตรจึงส่งกลับเป็นค่า TRUE |
=IF(OR(A5="สี แดง",B5="สีเขียว"),TRUE,FALSE) |
ถ้า A5 ("สีน้ําเงิน") เท่ากับ "สีแดง" หรือ B5 ("สีเขียว") เท่ากับ "สีเขียว" จะส่งกลับเป็นค่า TRUE มิฉะนั้นจะส่งกลับเป็นค่า FALSE ในกรณีนี้ อาร์กิวเมนต์ที่สองเป็นจริง ดังนั้นสูตรจะส่งกลับเป็นค่า TRUE |
=IF(NOT(A6>50),TRUE,FALSE) |
ถ้า A6 (25) มีค่าไม่มากกว่า 50 จะส่งกลับเป็นค่า TRUE ถ้าไม่ใช่ จะส่งกลับเป็นค่า FALSE ในกรณีนี้ 25 มีค่าไม่มากกว่า 50 ดังนั้นสูตรจะส่งกลับเป็นค่า TRUE |
=IF(NOT(A7="Red"),TRUE,FALSE) |
ถ้า A7 (“สีน้ำเงิน”) ไม่เท่ากับ “สีแดง” จะส่งกลับเป็นค่า TRUE ถ้าไม่ใช่ จะส่งกลับเป็นค่า FALSE |
โปรดทราบว่าตัวอย่างทั้งหมดมีวงเล็บปิดหลังจากป้อนเงื่อนไขที่เกี่ยวข้อง อาร์กิวเมนต์ True/False ที่เหลือจะถูกปล่อยให้เป็นส่วนหนึ่งของคําสั่ง IF ภายนอก คุณยังสามารถแทนที่ค่าข้อความหรือตัวเลขเพื่อให้ส่งกลับค่า TRUE/FALSE ในตัวอย่างได้
ต่อไปนี้คือตัวอย่าง ของการใช้ AND, OR และ NOT เพื่อประเมินวัน
ต่อไปนี้คือสูตรที่สะกดตามตรรกะของสูตรนั้น:
สูตร |
คำอธิบาย |
---|---|
=IF(A2>B2,TRUE,FALSE) |
ถ้า A2 มีค่ามากกว่า B2 จะส่งกลับเป็นค่า TRUE ถ้าไม่ใช่ จะส่งกลับเป็นค่า FALSE 03/12/14 มีค่ามากกว่า 01/01/14 ดังนั้นสูตรจะส่งกลับเป็นค่า TRUE |
=IF(AND(A3>B2,A3<C2),TRUE,FALSE) |
ถ้า A3 มีค่ามากกว่า B2 และ A3 มีค่าน้อยกว่า C2 จะส่งกลับเป็นค่า TRUE ถ้าไม่ใช่ จะส่งกลับเป็นค่า FALSE ในกรณีนี้ อาร์กิวเมนต์ทั้งสองเป็นจริง ดังนั้นสูตรจึงส่งกลับเป็นค่า TRUE |
=IF(OR(A4>B2,A4<B2+60),TRUE,FALSE) |
ถ้า A4 มีค่ามากกว่า B2 หรือ A4 น้อยกว่า B2 + 60 จะส่งกลับเป็นค่า TRUE ถ้าไม่ใช่ จะส่งกลับเป็นค่า FALSE ในกรณีนี้ อาร์กิวเมนต์แรกเป็นจริง แต่อาร์กิวเมนต์ที่สองเป็นเท็จ เนื่องจาก OR ต้องการเพียงหนึ่งในอาร์กิวเมนต์ที่เป็นจริง สูตรจึงส่งกลับเป็นค่า TRUE ถ้าคุณใช้ตัวช่วยสร้างการประเมินสูตรจากแท็บสูตร คุณจะเห็นวิธีที่ Excel ประเมินสูตร |
=IF(NOT(A5>B2),TRUE,FALSE) |
ถ้า A5 มีค่าไม่มากกว่า B2 จะส่งกลับเป็นค่า TRUE ถ้าไม่ใช่ จะส่งกลับเป็นค่า FALSE ในกรณีนี้ A5 มากกว่า B2 สูตรจึงส่งกลับเป็นค่า FALSE |
การใช้ AND, OR และ NOT กับการจัดรูปแบบตามเงื่อนไขใน Excel
ใน Excel คุณยังสามารถใช้ AND, OR และ NOT เพื่อตั้งค่าเกณฑ์การจัดรูปแบบตามเงื่อนไขด้วยตัวเลือกสูตรได้ เมื่อคุณทําเช่นนี้ คุณสามารถละเว้นฟังก์ชัน IF และใช้ AND, OR และ NOT ด้วยตนเองได้
ใน Excel จากแท็บ หน้าแรก ให้คลิก การจัดรูปแบบตามเงื่อนไข > กฎใหม่ ถัดไป ให้เลือกตัวเลือก "ใช้สูตรเพื่อกําหนดเซลล์ที่จะจัดรูปแบบ" ใส่สูตรของคุณและนํารูปแบบที่คุณเลือกไปใช้
ต่อไปนี้คือสูตรที่ใช้ตัวอย่าง วันที่ ที่แสดงไว้ก่อนหน้านี้
สูตร |
คำอธิบาย |
---|---|
=A2>B2 |
ถ้า A2 มีค่ามากกว่า B2 จะจัดรูปแบบเซลล์ ถ้าไม่ใช่ จะไม่ดำเนินการใดๆ |
=AND(A3>B2,A3<C2) |
ถ้า A3 มีค่ามากกว่า B2 และ A3 มีค่าน้อยกว่า C2 จะจัดรูปแบบเซลล์ ถ้าไม่ใช่ จะไม่ดำเนินการใดๆ |
=OR(A4>B2,A4<B2+60) |
ถ้า A4 มีค่ามากกว่า B2 หรือ A4 มีค่าน้อยกว่า B2 บวก 60 (วัน) จะจัดรูปแบบเซลล์ ถ้าไม่ใช่ จะไม่ดำเนินการใดๆ |
=NOT(A5>B2) |
ถ้า A5 มีค่าไม่มากกว่า B2 ให้จัดรูปแบบเซลล์ ถ้าไม่ใช่ จะไม่ดําเนินการใดๆ ในกรณีนี้ A5 มากกว่า B2 ผลลัพธ์จะส่งกลับเป็นค่า FALSE ถ้าคุณเปลี่ยนสูตรเป็น =NOT(B2>A5) สูตรจะส่งกลับเป็นค่า TRUE และเซลล์จะถูกจัดรูปแบบ |
หมายเหตุ: ข้อผิดพลาดทั่วไปคือการใส่สูตรของคุณลงในการจัดรูปแบบตามเงื่อนไขโดยไม่มีเครื่องหมายเท่ากับ (=) ถ้าคุณทําเช่นนี้ คุณจะเห็นว่ากล่องโต้ตอบการจัดรูปแบบตามเงื่อนไขจะเพิ่มเครื่องหมายเท่ากับและเครื่องหมายอัญประกาศให้กับสูตร - ="OR(A4>B2,A4<B2+60)" ดังนั้นคุณจะต้องเอาเครื่องหมายอัญประกาศออกก่อนที่สูตรจะตอบสนองอย่างถูกต้อง
ต้องการความช่วยเหลือเพิ่มเติมไหม
ดูเพิ่มเติม
คุณสามารถสอบถามผู้เชี่ยวชาญใน Excel Tech Community หรือรับการสนับสนุนใน ชุมชน
เรียนรู้วิธีการใช้ฟังก์ชันที่ซ้อนกันในสูตร
วิธีการหลีกเลี่ยงสูตรที่ใช้งานไม่ได้
ฟังก์ชันทางตรรกะ (ข้อมูลอ้างอิง)