Thep Excel

IFSทดสอบหลายเงื่อนไขแบบมีลำดับความสำคัญ

IFS ทดสอบหลายเงื่อนไขตามลำดับที่กำหนด และคืนค่าของเงื่อนไขแรกที่เป็น TRUE แล้วหยุดทำงานทันที โครงสร้างเป็นคู่ (เงื่อนไข, ผลลัพธ์) ซ้ำได้สูงสุด 127 คู่ ทำให้อ่านและเขียนง่ายกว่า Nested IF แบบซ้อนชั้น ควรใส่ TRUE เป็นเงื่อนไขสุดท้ายเพื่อกำหนดค่า default ป้องกัน #N/A error มีตั้งแต่ Excel 2019 และ Microsoft 365 เท่านั้น

fx
=IFS(logical_test1, value_if_true1, [logical_test2, value_if_true2], …)

ความนิยม9/10
ความยาก6/10
ประโยชน์9/10

อัปเดต 18 December 2025

Syntax & Arguments

อาร์กิวเมนต์ ชนิด คำอธิบาย
logical_test1 Logical เงื่อนไขแรกที่ต้องการทดสอบ ต้องให้ผลลัพธ์เป็น TRUE หรือ FALSE เท่านั้น ถ้าเป็น TRUE จะคืนค่า value_if_true1 ทันทีและหยุดการตรวจสอบเงื่อนไขที่เหลือ ใช้ตัวดำเนินการเปรียบเทียบ (>=, <=, =, , ) หรือฟังก์ชันที่คืนค่า logical เช่น AND, OR, ISBLANK, ISNUMBER
value_if_true1 Any ค่าที่จะคืนกลับมาเมื่อ logical_test1 เป็น TRUE สามารถเป็นตัวเลข ข้อความ วันที่ ค่า Boolean สูตรคำนวณ หรือ cell reference ก็ได้ อนุญาตให้เป็นค่าว่าง (empty) ได้ด้วย
[logical_test2]ไม่บังคับ Logical เงื่อนไขที่ 2 ที่จะทดสอบต่อ ถ้า logical_test1 เป็น FALSE สามารถเพิ่มเงื่อนไขได้ต่อเนื่องสูงสุด 127 คู่ (logical_test, value_if_true) โดยทดสอบตามลำดับจากซ้ายไปขวา
[value_if_true2]ไม่บังคับ Any ค่าที่จะคืนกลับมาเมื่อ logical_test2 เป็น TRUE สามารถเป็นประเภทข้อมูลใดก็ได้เหมือน value_if_true1
[…]ไม่บังคับ Logical/Any สามารถเพิ่มคู่ (logical_test, value_if_true) ได้อีกสูงสุด 125 คู่ รวมเป็น 127 คู่ทั้งหมด แนะนำให้ใส่ TRUE เป็น logical_test สุดท้ายพร้อมค่า default เพื่อป้องกัน #N/A error เมื่อไม่มีเงื่อนไขใดเป็น TRUE

[ ] = อาร์กิวเมนต์ที่ไม่บังคับ

Additional Notes

IFS เป็นฟังก์ชันที่ทดสอบหลายเงื่อนไขตามลำดับและคืนค่าของเงื่อนไขแรกที่เป็น TRUE แล้วหยุดการทำงานทันที

.

ที่เจ๋งคือ IFS ช่วยให้เราเขียนเงื่อนไขซับซ้อนได้อ่านง่ายกว่า Nested IF มากครับ ไม่ต้องมานั่งซ้อนวงเล็บหลายชั้นจนงง 😅

.

โครงสร้างเป็นคู่ (logical_test, value_if_true) วางเรียงกันไป รองรับได้สูงสุด 127 คู่เงื่อนไข แต่ส่วนตัวผมว่าถ้าเกิน 10 เงื่อนไขควรพิจารณาใช้ lookup table แทนนะครับ 💡

.

ข้อสำคัญ: ควรใส่ TRUE เป็น logical_test สุดท้ายเสมอเพื่อกำหนดค่า default ป้องกัน #N/A error เมื่อไม่มีเงื่อนไขใดตรงเลย นี่คือ best practice ที่ผมแนะนำให้ทำทุกครั้งครับ 😎

.

มีตั้งแต่ Excel 2019 และ Microsoft 365 เท่านั้น ถ้าใช้เวอร์ชันเก่ากว่าจะต้องใช้ Nested IF แทนนะครับ

How it works

ระบบตัดเกรดและประเมินผล

ใช้ IFS เพื่อแปลงคะแนนตัวเลข (0-100) เป็นเกรด (A-F) หรือระดับการประเมิน (ดีเยี่ยม, ดี, ปานกลาง, ปรับปรุง) แบบอัตโนมัติ เหมาะกับระบบการศึกษา HR performance review

คำนวณส่วนลดและค่าคอมมิชชั่นแบบขั้นบันได

กำหนดอัตราส่วนลดหรือค่าคอมมิชชั่นที่แตกต่างกันตามยอดซื้อ ยอดขาย หรือปริมาณที่สั่งซื้อ โดยแบ่งเป็นช่วงระดับ (tier) เช่น ซื้อครบ 100,000 ได้ส่วนลด 5%, ครบ 500,000 ได้ 10%

จัดกลุ่มลูกค้าและสินค้าตามเกณฑ์

แบ่งลูกค้าเป็น VIP tier (Diamond, Platinum, Gold, Silver, Bronze) ตามยอดซื้อสะสม หรือจัดหมวดหมู่สินค้าเป็น Premium, Standard, Economy ตามช่วงราคาหรือคุณสมบัติ

ระบบเตือนและแจ้งสถานะอัตโนมัติ

สร้างระบบแจ้งเตือนตามเงื่อนไข เช่น แจ้งสถานะสินค้าคงคลัง (Out of Stock, Low Stock, In Stock, Overstock) หรือสถานะโครงการ (Urgent, High Priority, Normal, Low Priority) ตามข้อมูลที่กำหนด

คำนวณค่าธรรมเนียมและค่าบริการแบบหลายปัจจัย

คำนวณค่าจัดส่ง ค่าธรรมเนียมธนาคาร หรือค่าบริการที่ขึ้นอยู่กับหลายตัวแปร เช่น ระยะทาง น้ำหนัก ประเภทลูกค้า ใช้ IFS ร่วมกับ AND/OR เพื่อรองรับเงื่อนไขที่ซับซ้อน

Examples

ตัวอย่างที่ 1: พื้นฐาน – ตัดเกรดจากคะแนนสอบIFS(85>=90, "A", 85>=80, "B", 85>=70, "C", 85>=60, "D", TRUE, "F")

ทดสอบคะแนน 85: เงื่อนไข 85>=90 เป็น FALSE (ข้ามไป) → เงื่อนไข 85>=80 เป็น TRUE → คืนค่า "B" ทันทีและหยุดทำงาน ไม่ทดสอบเงื่อนไข 85>=70, 85>=60 และ TRUE ที่เหลือ

การใช้ TRUE เป็นเงื่อนไขสุดท้ายจะทำให้มั่นใจว่า ถ้าไม่ตรงเงื่อนไขใด (เช่น คะแนนต่ำกว่า 60) จะได้เกรด F แทนที่จะเป็น #N/A error 💡

fx
=IFS(85>=90, "A", 85>=80, "B", 85>=70, "C", 85>=60, "D", TRUE, "F")

ผลลัพธ์B
ตัวอย่างที่ 2: การใช้งานจริง – คำนวณค่าคอมมิชชั่นแบบขั้นบันไดIFS(SalesAmount>=500000, SalesAmount*0.15, SalesAmount>=300000, SalesAmount*0.10, SalesAmount>=100000, SalesAmount*0.05, TRUE, 0)

สมมติ SalesAmount เป็น Named Range ที่มีค่า 300,000: ทดสอบ 300000>=500000 FALSE → 300000>=300000 TRUE → คืนค่า 300000*0.10 = 30,000 บาท

ตัวอย่างนี้แสดงการใช้สูตรคำนวณใน value_if_true แทนที่จะเป็นค่าคงที่ และใช้ TRUE, 0 สำหรับยอดขายต่ำกว่า 100,000 ไม่ได้ค่าคอมมิชชั่น

สังเกตนะครับว่า ลำดับเงื่อนไขต้องเรียงจากมากไปน้อย (500k → 300k → 100k) เพื่อให้ได้ผลถูกต้อง

fx
=IFS(SalesAmount>=500000, SalesAmount*0.15, SalesAmount>=300000, SalesAmount*0.10, SalesAmount>=100000, SalesAmount*0.05, TRUE, 0)

ผลลัพธ์45000 (เมื่อ SalesAmount = 300,000)
ตัวอย่างที่ 3: ใช้กับ Excel Table – จัดกลุ่มลูกค้า VIPIFS(Customers[@TotalPurchase]>=1000000, "Diamond", Customers[@TotalPurchase]>=500000, "Platinum", Customers[@TotalPurchase]>=100000, "Gold", Customers[@TotalPur…

ใช้ structured reference [@TotalPurchase] จาก Excel Table ชื่อ Customers เพื่ออ้างอิงค่ายอดซื้อสะสมในแถวเดียวกัน

ถ้ายอดซื้อ 250,000: ทดสอบ 250000>=1000000 FALSE → 250000>=500000 FALSE → 250000>=100000 TRUE → คืนค่า "Gold"

การใช้ structured reference ทำให้สูตร copy ลงไปแต่ละแถวได้อัตโนมัติ โดยไม่ต้องปรับ cell reference และอ่านเข้าใจง่ายกว่าด้วยครับ 😎

fx
=IFS(Customers[@TotalPurchase]>=1000000, "Diamond", Customers[@TotalPurchase]>=500000, "Platinum", Customers[@TotalPurchase]>=100000, "Gold", Customers[@TotalPurchase]>=10000, "Silver", TRUE, "Bronze")

ผลลัพธ์Gold (เมื่อ TotalPurchase = 250,000)
ตัวอย่างที่ 4: ใช้ร่วมกับ IS functions – ตรวจสอบประเภทข้อมูลIFS(ISBLANK(DataCell), "ไม่มีข้อมูล", ISERROR(DataCell), "ข้อมูลผิดพลาด", ISNUMBER(DataCell), "ตัวเลข", ISTEXT(DataCell), "ข้อความ", TRUE, "Boolean/อื่นๆ")

สมมติ DataCell เป็น Named Range ที่อ้างถึงเซลล์ที่มีค่า 1250: ISBLANK(1250) FALSE → ISERROR(1250) FALSE → ISNUMBER(1250) TRUE → คืนค่า "ตัวเลข"

ตัวอย่างนี้แสดงการเรียง logical_test ตามลำดับความเฉพาะเจาะจง โดย ISBLANK และ ISERROR ควรอยู่ก่อนเพราะเป็นกรณีพิเศษที่ต้องจัดการก่อน

ลำดับเงื่อนไขมีความสำคัญมากครับ ถ้าเรียงผิด อาจได้ผลลัพธ์ไม่ตรงความต้องการ

fx
=IFS(ISBLANK(DataCell), "ไม่มีข้อมูล", ISERROR(DataCell), "ข้อมูลผิดพลาด", ISNUMBER(DataCell), "ตัวเลข", ISTEXT(DataCell), "ข้อความ", TRUE, "Boolean/อื่นๆ")

ผลลัพธ์ตัวเลข (เมื่อ DataCell = 1250)
ตัวอย่างที่ 5: Advanced – ใช้กับ AND/OR สำหรับเงื่อนไขซับซ้อนIFS(AND(Score>=80, Attendance>=90), "Excellent", AND(Score>=70, Attendance>=80), "Good", AND(Score>=60, Attendance>=70), "Fair", OR(Score

สมมติ Score และ Attendance เป็น Named Ranges: ทดสอบ AND(75>=80, 85>=90) ทั้งคู่ต้อง TRUE แต่ 75>=80 FALSE ดังนั้น AND คืนค่า FALSE → ทดสอบ AND(75>=70, 85>=80) ทั้งคู่เป็น TRUE → คืนค่า "Good"

ตัวอย่างนี้แสดงการใช้ IFS กับ logical functions เช่น AND (ต้องตรงทุกเงื่อนไข) และ OR (ตรงเงื่อนไขใดเงื่อนไขหนึ่ง) เพื่อสร้างเงื่อนไขที่ซับซ้อนขึ้น

fx
=IFS(AND(Score>=80, Attendance>=90), "Excellent", AND(Score>=70, Attendance>=80), "Good", AND(Score>=60, Attendance>=70), "Fair", OR(Score<60, Attendance<70), "Needs Improvement", TRUE, "Unknown")

ผลลัพธ์Good (เมื่อ Score=75, Attendance=85)
ตัวอย่างที่ 6: Edge Case – ไม่ใส่ TRUE ท้ายสุดIFS(45>=80, "A", 45>=70, "B", 45>=60, "C")

คะแนน 45 ไม่ตรงเงื่อนไขใดเลย (45>=80 FALSE, 45>=70 FALSE, 45>=60 FALSE) และไม่มี TRUE เป็นค่า default จึงได้ #N/A error

นี่เป็นข้อผิดพลาดที่พบบ่อยมากครับ 😅 แนะนำให้ใส่ TRUE เป็น logical_test สุดท้ายเสมอ เช่น =IFS(45>=80, "A", 45>=70, "B", 45>=60, "C", TRUE, "F") จะได้ผลลัพธ์ "F" แทน #N/A ✨

fx
=IFS(45>=80, "A", 45>=70, "B", 45>=60, "C")

ผลลัพธ์#N/A
ตัวอย่างที่ 7: เปรียบเทียบ IFS กับ Nested IFIFS(Score>=90, "A", Score>=80, "B", Score>=70, "C", Score>=60, "D", TRUE, "F")

IFS และ Nested IF ให้ผลลัพธ์เหมือนกัน แต่ IFS อ่านง่ายกว่ามาก โดยเฉพาะเมื่อมีหลายเงื่อนไข ไม่ต้องนับวงเล็บปิดซ้อนกัน 😎

เพิ่มเงื่อนไขใหม่ก็ง่ายกว่า เพียงแค่เพิ่มคู่ (logical_test, value_if_true) ท้ายสุด

อย่างไรก็ตาม Nested IF มีข้อดีคือ short-circuit evaluation (หยุดทำงานทันทีเมื่อเจอ TRUE) ส่วน IFS จะ evaluate ทุกเงื่อนไขก่อน ซึ่งอาจส่งผลต่อประสิทธิภาพในกรณีสูตรซับซ้อน

fx
=IFS(Score>=90, "A", Score>=80, "B", Score>=70, "C", Score>=60, "D", TRUE, "F")

ผลลัพธ์(เทียบเท่า Nested IF) =IF(Score>=90, "A", IF(Score>=80, "B", IF(Score>=70, "C", IF(Score>=60, "D", "F"))))
ตัวอย่างที่ 8: Real-World – ระบบคำนวณค่าจัดส่งIFS(AND(Region="Bangkok", Weight

สมมติ Region และ Weight เป็น Named Ranges: ตรวจสอบ AND("Bangkok"="Bangkok", 3<=2) FALSE → AND("Bangkok"="Bangkok", 3<=5) TRUE → คืนค่า 80 บาท

ตัวอย่างนี้แสดงการใช้ IFS กับเงื่อนไขหลายมิติ (ทั้งภูมิภาคและน้ำหนัก) เหมาะกับการคำนวณค่าจัดส่งที่มีหลายตัวแปร โดยใช้ AND เพื่อรวมเงื่อนไข และ TRUE เป็นค่า default สำหรับของหนักเกิน 5 กก. นอกกรุงเทพฯ 📦

fx
=IFS(AND(Region="Bangkok", Weight<=2), 50, AND(Region="Bangkok", Weight<=5), 80, AND(Region="Bangkok", Weight>5), 120, AND(Region<>"Bangkok", Weight<=2), 80, AND(Region<>"Bangkok", Weight<=5), 120, TRUE, 200)

ผลลัพธ์80 (เมื่อ Region="Bangkok", Weight=3)

FAQs

IFS ต่างจาก Nested IF อย่างไร และควรใช้อันไหน?+

IFS เขียนและอ่านง่ายกว่า Nested IF เพราะไม่ต้องซ้อนวงเล็บหลายชั้น โครงสร้างเป็นคู่ (logical_test, value_if_true) วางเรียงกันไปตามลำดับ

เปรียบเทียบกันดูนะครับ:
– Nested IF: =IF(A>=90,"A",IF(A>=80,"B",IF(A>=70,"C","F")))
– IFS: =IFS(A>=90,"A",A>=80,"B",A>=70,"C",TRUE,"F")

ยิ่งมีหลายเงื่อนไข IFS ยิ่งอ่านง่ายกว่ามาก อย่างไรก็ตาม Nested IF มี true short-circuit evaluation (หยุดทำงานทันทีเมื่อเจอ TRUE และไม่ evaluate เงื่อนไขที่เหลือ) ส่วน IFS จะ evaluate ทุก expression ก่อน ซึ่งอาจส่งผลต่อประสิทธิภาพในกรณีที่มีสูตรคำนวณซับซ้อนใน value_if_true

ส่วนตัวผมแนะนำใช้ IFS เมื่อต้องการความอ่านง่าย และใช้ Nested IF เมื่อต้องการประสิทธิภาพสูงสุดครับ

ทำไมได้ #N/A error และจะป้องกันอย่างไร?+

เกิด #N/A error เพราะไม่มีเงื่อนไขใดเป็น TRUE เลย และไม่ได้ใส่ค่า default ไว้

วิธีแก้คือเพิ่ม TRUE เป็น logical_test สุดท้ายเสมอ พร้อมกำหนดค่า default ที่ต้องการ เช่น =IFS(Score>=80,"A",Score>=70,"B",TRUE,"C") จะได้ "C" เมื่อคะแนนต่ำกว่า 70 แทนที่จะเป็น #N/A

การใส่ TRUE ท้ายสุดเป็น best practice ที่สำคัญของการใช้ IFS ครับ เพราะเงื่อนไข TRUE จะเป็น TRUE เสมอ ทำให้มั่นใจว่าจะมีค่าคืนกลับมาเสมอ 💡

ลำดับของเงื่อนไข (logical_test) สำคัญไหม?+

สำคัญมากครับ! IFS ทดสอบเงื่อนไขตามลำดับจากซ้ายไปขวาและคืนค่าทันทีเมื่อเจอเงื่อนไขแรกที่เป็น TRUE แล้วหยุดการทำงาน

ดังนั้นต้องเรียงเงื่อนไขจากเฉพาะเจาะจงที่สุดไปยังกว้างที่สุด

ตัวอย่างเช่น: ถ้าต้องการตัดเกรด ต้องเรียง Score>=90 (A) ก่อน Score>=80 (B) ก่อน Score>=70 (C)

ถ้าเรียงกลับกัน (70 ก่อน 80 ก่อน 90) คะแนน 95 จะได้เกรด C เพราะ 95>=70 เป็น TRUE แล้ว ทำให้ไม่ถึงการทดสอบ 95>=80 และ 95>=90 เลย

นี่เป็นข้อผิดพลาดที่พบบ่อยมากครับ ระวังให้ดีนะครับ 😅

IFS รองรับ Excel เวอร์ชันไหนบ้าง?+

IFS มีตั้งแต่ Excel 2019, Excel 2021 และ Microsoft 365 เท่านั้น ไม่มีใน Excel 2016, 2013, 2010 หรือเวอร์ชันเก่ากว่า รองรับทั้ง Windows, Mac และ Excel for the web ถ้าใช้งานกับเวอร์ชันเก่ากว่า 2019 ให้ใช้ Nested IF แทน หรือพิจารณาใช้ CHOOSE ร่วมกับ MATCH สำหรับกรณีที่เป็นการเลือกตาม index

IFS กับ SWITCH ต่างกันอย่างไร ควรเลือกใช้อันไหน?+

IFS ใช้ logical operators (>=, =80

ส่วน SWITCH เปรียบเทียบค่าเท่ากัน (exact match) เท่านั้น เหมาะกับการเลือกตามค่าคงที่ เช่น Region="North" และ SWITCH มี default value built-in อยู่แล้ว ไม่ต้องใส่ TRUE

แนะนำใช้ SWITCH เมื่อเปรียบเทียบค่าเท่ากันหลายตัวเลือก (อ่านง่ายกว่า) และใช้ IFS เมื่อต้องการเงื่อนไขที่ซับซ้อนหรือเปรียบเทียบช่วงค่า

ตัวอย่าง: =SWITCH(Region,"North",10%,"South",8%,5%) กับ =IFS(Region="North",10%,Region="South",8%,TRUE,5%) ให้ผลเหมือนกัน แต่ SWITCH อ่านง่ายกว่าครับ

IFS รองรับกี่เงื่อนไข และมีข้อจำกัดอะไรบ้าง?+

IFS รองรับได้สูงสุด 127 คู่ (logical_test, value_if_true) แต่ถ้ามีเงื่อนไขเยอะมากควรพิจารณาใช้วิธีอื่น เช่น XLOOKUP, SWITCH หรือ lookup table เพื่อความอ่านง่ายและบำรุงรักษาง่ายกว่า

ข้อจำกัดอื่นๆ:
1) logical_test ต้องคืนค่า TRUE/FALSE เท่านั้น ถ้าไม่ใช่จะได้ #VALUE! error
2) ถ้าไม่มีเงื่อนไขใดเป็น TRUE และไม่มีค่า default จะได้ #N/A
3) IFS ไม่มี true short-circuit evaluation ทำให้อาจช้ากว่า Nested IF ในกรณีสูตรซับซ้อน
4) ความยาวสูตรรวมต้องไม่เกิน 8,192 ตัวอักษร (ข้อจำกัดของ Excel)

เมื่อไหร่ควรใช้ IFS และเมื่อไหร่ควรใช้วิธีอื่น?+

ใช้ IFS เมื่อ:
1) มีเงื่อนไข 3-10 เงื่อนไข (มากกว่านี้อ่านยาก)
2) เงื่อนไขใช้ comparison operators (>=,

IFS จัดการ error อย่างไร และจะป้องกันอย่างไร?+

IFS สามารถคืนค่า error ได้ 3 แบบ:

1) #N/A error เมื่อไม่มีเงื่อนไขใดเป็น TRUE และไม่มีค่า default → แก้ด้วยการใส่ TRUE เป็นเงื่อนไขสุดท้าย

2) #VALUE! error เมื่อ logical_test ไม่ได้คืนค่า TRUE/FALSE (เช่น ใส่ตัวเลขหรือข้อความ) → ตรวจสอบให้แน่ใจว่าเงื่อนไขใช้ comparison operators หรือ logical functions

3) "You've entered too few arguments" เมื่อมี logical_test แต่ไม่มี value_if_true คู่กัน → ตรวจสอบว่ามี argument ครบคู่ (logical_test, value_if_true)

นอกจากนี้ถ้ามี error ใน cell ที่ reference (เช่น #DIV/0!) จะส่งต่อ error นั้นมาด้วย สามารถใช้ IFERROR หรือ ISERROR เพื่อจัดการ error ได้ เช่น =IFS(ISERROR(A1),"Error",A1>=80,"Pass",TRUE,"Fail")

Resources & Related

ฟังก์ชันที่ผู้เขียนโยงไว้กับ IFS จัดกลุ่มตามหมวด · ชี้ที่ชื่อใดชื่อหนึ่ง แล้วฟังก์ชันที่ใช้คู่กันจะมีจุดทอง

ฟังก์ชันนี้IFSLogical
Logical (5)
AND

AND ตรวจสอบเงื่อนไขได้สูงสุด 255 เงื่อนไข โดยจะคืนค่า TRUE ก็ต่อเมื่อ Logical ทุกตัว (logical1, logical2,…) ให้ผลเป็น TRUE ทั้งหมด
.
เรียกได้ว่าเป็นแบบ 'เข้มงวด' ที่ต้องผ่านทุกข้อถึงจะได้ TRUE ครับ ถ้าสักข้อเดียวเป็น FALSE… จบเลย 😅

IF

IF เป็นฟังก์ชันตรรกะพื้นฐานที่ใช้ตัดสินใจสองทางตามเงื่อนไข ตรวจสอบว่าเงื่อนไขเป็น TRUE หรือ FALSE แล้วคืนค่าที่แตกต่างกันไปตามผลลัพธ์ สามารถใช้ได้กับการเปรียบเทียบตัวเลข ข้อความ หรือวันที่ และเป็นพื้นฐานสำคัญของการสร้างสูตรแบบมีเงื่อนไข

IFERROR

IFERROR ช่วยดักจับ Error ทุกประเภทที่เกิดขึ้นในสูตร (#N/A, #VALUE!, #REF!, #DIV/0!, #NUM!, #NAME?, #NULL!) แล้วเปลี่ยนเป็นค่าที่เราต้องการแทน
.
ที่เจ๋งคือมันช่วยให้รายงานและ Dashboard ดูสะอาด ไม่มี Error แสดงให้ผู้ใช้งานเห็น โดยถ้าสูตรไม่มี Error ก็จะ return ผลลัพธ์ปกติ
.
ส่วนตัวผมคิดว่าฟังก์ชันนี้เป็น "ตัวช่วยมหาเทพ" สำหรับคนทำรายงานเลยครับ 😎

OR

OR คือฟังก์ชันตรรกศาสตร์ที่ตรวจสอบเงื่อนไขได้สูงสุด 255 ข้อ และจะคืนค่า TRUE ถ้ามี 'เงื่อนไขใดเงื่อนไขหนึ่ง' เป็นจริง เป็นเครื่องมือจำเป็นสำหรับการสร้างเงื่อนไขที่ยืดหยุ่น

SWITCH

SWITCH ประเมินนิพจน์หรือค่าหนึ่งค่า แล้วเปรียบเทียบกับรายการค่าที่กำหนดตามลำดับ เมื่อพบค่าที่ตรงกันจะส่งคืนผลลัพธ์ที่เชื่อมโยงทันที หากไม่ตรงกับค่าใดเลยสามารถกำหนด default value ได้ เหมาะสำหรับแทนที่ nested IF หลายชั้นด้วยไวยากรณ์ที่อ่านง่ายกว่ามาก

Statistical (2)
MAXIFS

MAXIFS ใช้หาค่าสูงสุดจากช่วงข้อมูลที่ตรงตามเงื่อนไขหนึ่งหรือมากกว่า แตกต่างจาก MAX ที่หาเพียงค่าสูงสุดทั้งหมด MAXIFS มีความยืดหยุ่นในการกรองข้อมูลก่อนหาค่าสูงสุด

MINIFS

MINIFS ช่วยหาค่าต่ำสุดของข้อมูลที่ตรงตามเงื่อนไขที่กำหนด เหมือนการใช้ MIN แต่มีความสามารถในการกรองข้อมูลก่อน

Lookup and reference (1)
CHOOSE

CHOOSE เลือกค่าจากรายการค่าตามหมายเลขลำดับที่ระบุ เป็นเหมือนการเลือกรายการจากเมนู ส่งคืนค่าที่ตำแหน่งที่กำหนด มีประโยชน์ในการสร้างสูตรแบบเลือกตามเงื่อนไข

Text (1)
SEARCH

SEARCH ค้นหาตำแหน่งของคำที่ต้องการในข้อความหลัก ถ้าเจอคืนตัวเลขตำแหน่งที่พบ ถ้าไม่เจอคืน #VALUE! ต่างจาก FIND ตรงที่ไม่แยกแยะตัวพิมพ์เล็ก-ใหญ่ (A=a) และใช้ wildcard (* กับ ?) ค้นหาแบบมีรูปแบบได้ เอาไปต่อกับ ISNUMBER ก็กลายเป็นสูตรเช็คว่าเซลล์มีคำนี้อยู่หรือไม่ ซึ่งเป็นวิธีที่ใช้กันบ่อยที่สุดในงานจัดหมวดหมู่หรือกรองข้อมูลจากคำสำคัญ

Math and trigonometry (1)
SUMIFS

SUMIFS บวกค่าจาก sum_range เฉพาะแถวที่ตรงตามเงื่อนไขทุกข้อพร้อมกัน (AND logic) รองรับได้สูงสุด 127 คู่เงื่อนไข สามารถใช้ comparison operators (>, =, <=, ), wildcard characters (*, ?), และ cell references ใน criteria ได้ เหมาะสำหรับการวิเคราะห์ข้อมูลแบบ multi-dimensional filtering เช่น รายงานยอดขายตามภูมิภาค ช่วงเวลา และสถานะพร้อมกัน โดยไม่ต้องใช้ helper columns หรือฟังก์ชันซ้อนซับซ้อน

Comments

อีเมลของคุณจะไม่ถูกเผยแพร่