XOR (Exclusive OR) เป็นสูตรตรรกะที่คืน TRUE เมื่อมีเงื่อนไขเป็นจริงจำนวนคี่ สำหรับกรณีที่ใช้บ่อยคือ 2 เงื่อนไข XOR จะเป็น TRUE เมื่อ “อย่างใดอย่างหนึ่งเป็นจริง แต่ไม่ใช่ทั้งคู่” ต่างจาก OR ที่เป็นจริงเมื่อมีอย่างน้อยหนึ่งข้อ
รูปแบบและตารางค่าความจริง
=XOR(เงื่อนไข1, เงื่อนไข2, ...)
| A | B | =OR(A,B) | =XOR(A,B) |
| TRUE | TRUE | TRUE | FALSE |
| TRUE | FALSE | TRUE | TRUE |
| FALSE | TRUE | TRUE | TRUE |
| FALSE | FALSE | FALSE | FALSE |
ตัวอย่างที่ 1: ต้องเลือกวิธีชำระเงินอย่างใดอย่างหนึ่ง
D2fx
=IF(XOR(B2="x",C2="x"),"ผ่าน","ตรวจสอบ")| A | B | C | D | |
|---|---|---|---|---|
| 1 | ออร์เดอร์ | โอน | เงินสด | ผลตรวจ |
| 2 | #1 | x | ผ่าน | |
| 3 | #2 | x | x | ตรวจสอบ |
| 4 | #3 | ตรวจสอบ |
แถวที่ 2 ติ๊กช่องเดียว = ถูกต้อง แถวที่ 3 ติ๊กทั้งสอง และแถวที่ 4 ไม่ติ๊กเลย = ผิดปกติ ต้องตรวจ XOR เหมาะกับกฎแบบ “เลือกได้อย่างเดียวเท่านั้น”
ตัวอย่างที่ 2: เช็คว่ามีการเปลี่ยนแปลงพอดีหนึ่งช่อง
D2fx
=XOR(B2<>C2, E2<>F2)| A | B | C | E | F | D | |
|---|---|---|---|---|---|---|
| 1 | รายการ | ราคาเดิม | ราคาใหม่ | สต็อกเดิม | สต็อกใหม่ | เปลี่ยนพอดี 1 อย่าง? |
| 2 | A | 100 | 120 | 50 | 50 | TRUE |
ราคาเปลี่ยน (100→120) แต่สต็อกไม่เปลี่ยน (50=50) XOR จึงเป็น TRUE ถ้าเปลี่ยนทั้งคู่หรือไม่เปลี่ยนเลยจะได้ FALSE
เมื่อมี 3 เงื่อนไขขึ้นไป: XOR คือ “นับคี่” ไม่ใช่ “พอดีหนึ่ง”
| จำนวนเงื่อนไขที่เป็น TRUE | =XOR(…) |
| 1 | TRUE |
| 2 | FALSE |
| 3 | TRUE |
| 4 | FALSE |
นี่คือจุดที่คนเข้าใจผิดบ่อย ถ้าอยากได้ “เป็นจริงพอดี 1 ข้อ” จาก 3 เงื่อนไขขึ้นไป ให้ใช้ =SUM(--(เงื่อนไข1), --(เงื่อนไข2), --(เงื่อนไข3))=1 แทน