วิทยาลัยนานาชาตินวัตกรรมดิจิทัล มหาวิทยาลัยเชียงใหม่
26 มีนาคม 2569
ในโปรแกรม Excel ฟังก์ชัน IF สามารถใช้ได้หลายรูปแบบขึ้นอยู่กับวัตถุประสงค์ โดยมีตรรกะพื้นฐานที่อิงกับ ตัวดำเนินการเงื่อนไข (conditional operators) ซึ่งสามารถแบ่งได้เป็น 3 รูปแบบหลัก ดังแสดงในตารางด้านล่างนี้
| สัญลักษณ์ | ความหมาย | ตัวอย่างสูตร (Formula) | ผลลัพธ์ |
|---|---|---|---|
= |
เท่ากับ | =A1=10 |
TRUE / FALSE |
<> |
ไม่เท่ากับ | =A1<>10 |
TRUE / FALSE |
> |
มากกว่า | =A1>10 |
TRUE / FALSE |
< |
น้อยกว่า | =A1<10 |
TRUE / FALSE |
>= |
มากกว่าหรือเท่ากับ | =A1>=10 |
TRUE / FALSE |
<= |
น้อยกว่าหรือเท่ากับ | =A1<=10 |
TRUE / FALSE |
คัดลอกและวางตารางด้านล่างลงใน Excel โดยเริ่มที่เซลล์ A1
| Name (ชื่อ) | Exam Score (คะแนนสอบ) | Age (อายุ) | Status (สถานะ) |
|---|---|---|---|
| John | 85 | 20 | – |
| Emily | 45 | 22 | – |
| Sophia | 55 | 18 | – |
| Michael | 90 | 21 | – |
| Daniel | 40 | 19 | – |
| Olivia | 60 | 24 | – |
| Ethan | 78 | 23 | – |
| Lucas | 30 | 17 | – |
| William | 95 | 25 | – |
| Isabella | 50 | 19 | – |
ตรวจสอบว่าคะแนนสอบเป็น “ผ่าน (Pass)” หรือ “ไม่ผ่าน (Fail)” โดยกำหนดว่าคะแนน ผ่าน = 50 ขึ้นไป
ใช้เมื่อมี หลายเงื่อนไข (multiple conditions) และต้องการให้แสดงผลลัพธ์ได้มากกว่า 2 แบบ
รูปแบบ (Syntax):
ตัวอย่าง:
สูตรนี้หมายถึง:
ใช้ร่วมกับฟังก์ชันอื่น (เช่น AND, OR หรือการคำนวณต่าง ๆ) เพื่อสร้างตรรกะที่ซับซ้อนยิ่งขึ้น
รูปแบบ (Syntax):
หรือ
ตัวอย่าง (Examples):
หรือ
ผลลัพธ์ในคอลัมน์ “Status”:
| Status (สถานะ) |
|---|
| Does not meet criteria |
| Pass and over 20 |
| Does not meet criteria |
| Pass and over 20 |
| Does not meet criteria |
| Pass and over 20 |
| Pass and over 20 |
| Does not meet criteria |
| Pass and over 20 |
| Does not meet criteria |
ตรวจสอบว่าคะแนนสอบผ่าน หรืออายุมากกว่า 20 ปีหรือไม่
สูตร (Formula):
ผลลัพธ์ในคอลัมน์ “Status”:
| Status (สถานะ) |
|---|
| Pass or over 20 |
| Pass or over 20 |
| Pass or over 20 |
| Pass or over 20 |
| Does not meet criteria |
| Pass or over 20 |
| Pass or over 20 |
| Does not meet criteria |
| Pass or over 20 |
| Pass or over 20 |
IFS: ใช้เพื่อตรวจสอบหลายเงื่อนไขในครั้งเดียว คล้ายกับ IF แบบซ้อน แต่มีรูปแบบที่อ่านง่ายและกระชับกว่า
ตัวอย่าง: การใช้ฟังก์ชัน IFS
การกำหนดระดับคะแนน (Assigning Score Levels)
เงื่อนไข:
"Excellent""Good""Needs Improvement"สูตร (Formula):
ผลลัพธ์ในคอลัมน์ “Status”:
| Status (สถานะ) |
|---|
| Excellent |
| Needs Improvement |
| Good |
| Excellent |
| Needs Improvement |
| Good |
| Good |
| Needs Improvement |
| Excellent |
| Good |
วิธีใช้ SWITCH
เนื่องจาก SWITCH ไม่สามารถประเมินตัวดำเนินการเปรียบเทียบ โดยตรง (เช่น มากกว่า/น้อยกว่า) จึงควรแปลงเงื่อนไขให้เป็น ค่าคงที่ โดยใช้ฟังก์ชันอย่าง TRUE เพื่อให้รองรับตรรกะแบบช่วงได้
สูตร (Formula):
คำอธิบายของสูตร
SWITCH(TRUE, ...): ทำให้ SWITCH ทำงานคล้าย IF โดยตรวจเช็กเงื่อนไขเรียงตามลำดับB2>80: ถ้าคะแนนมากกว่า 80 ให้คืนค่า "A"B2>=50: ถ้าคะแนนอยู่ระหว่าง 50–80 ให้คืนค่า "B"TRUE: เงื่อนไขปิดท้าย (fallback) — ถ้าไม่เข้าเงื่อนไขใดด้านบน ให้คืนค่า "F"ผลลัพธ์จากสูตรในคอลัมน์ “Status”
| ชื่อ | คะแนนสอบ | สถานะ |
|---|---|---|
| John | 85 | A |
| Emily | 45 | F |
| Sophia | 55 | B |
| Michael | 90 | A |
| Daniel | 40 | F |
| Olivia | 60 | B |
| Ethan | 78 | B |
| Lucas | 30 | F |
| William | 95 | A |
| Isabella | 50 | B |
ข้อดีของฟังก์ชัน SWITCH
อ่านเข้าใจง่ายกว่าการใช้ Nested IF หรือ IFS เมื่อต้องจัดการกับหลายเงื่อนไข
มีโครงสร้างที่กระชับกว่า เหมาะสำหรับค่าคงที่หรือสมการตรรกะที่ไม่ซับซ้อน
คัดลอกตารางนี้แล้ววางลงในเซลล์ A1 ในโปรแกรม Excel
| พนักงาน (Employee) | ตำแหน่ง (Position) | เงินเดือน (Salary) | คะแนนประเมิน (Evaluation Score) |
|---|---|---|---|
| A1 | Supervisor | 70000 | 100 |
| A2 | Staff | 80000 | 65 |
| A3 | Manager | 70000 | 95 |
| A4 | Staff | 85000 | 55 |
| A5 | Manager | 65000 | 85 |
| A6 | Manager | 50000 | 50 |
| A7 | Supervisor | 40000 | 95 |
| A8 | Staff | 35000 | 75 |
| A9 | Supervisor | 45000 | 50 |
| A10 | Supervisor | 35000 | 100 |
| A11 | Supervisor | 80000 | 65 |
| A12 | Supervisor | 95000 | 55 |
| A13 | Staff | 45000 | 65 |
| A14 | Staff | 90000 | 75 |
| A15 | Supervisor | 30000 | 95 |
| A16 | Manager | 45000 | 95 |
| A17 | Staff | 95000 | 85 |
| A18 | Supervisor | 65000 | 60 |
| A19 | Staff | 40000 | 65 |
| A20 | Manager | 70000 | 85 |
เงื่อนไข:
เงื่อนไข:
เงื่อนไข:
เงื่อนไข:
1)
=IF(D2>=75, "Bonus", "No Bonus")
2)
=IFS(D2>=90, "15%", D2>=80, "10%", D2>=70, "5%", D2<70, "0%")
3)
=IF(C2<50000, IF(D2>=80, "10%", "0%"), IF(D2>=90, "5%", "0%"))
4)
=SWITCH(B2, "Staff", 1, "Supervisor", 2, "Manager", 3, "Unknown")