SUMIFS / COUNTIFS / AVERAGEIFS — รวมค่านับค่าแบบหลายเงื่อนไข
1. ต่อยอดจาก SUM/COUNT สู่การคิดตามเงื่อนไข
บทเรียนที่แล้วเราได้อินกับ IF / IFS / SWITCH — จัดการเงื่อนไขทีละค่า แต่วันนี้ผมจะพาคุณไปอีกขั้นนั่นคือการ “รวมค่า” และ “นับค่า” ที่เจาะจงเฉพาะข้อมูลที่ตรงเงื่อนไขเท่านั้นครับ
สมมติคุณมีตารางยอดขายเป็นพันแถว แล้วอยากรู้ว่า “เดือน 9 สาขากรุงเทพ ขายเสื้อผ้าได้เท่าไหร่” — ถ้าใช้ SUM ธรรมดาคงต้องกรองก่อนแล้วค่อยรวมเป็นรายๆ เปลืองเวลามาก แต่ด้วย SUMIFS คุณเขียนสูตรเดียวจบครับ
กลุ่มฟังก์ชันที่เราจะดูในบทความนี้คือ:
- SUMIF / COUNTIF — เงื่อนไขเดียว
- SUMIFS / COUNTIFS / AVERAGEIFS — หลายเงื่อนไข
เปิดไฟล์ตัวอย่าง แล้วทำตามไปด้วยกันนะครับ ผมเตรียมไว้ 3 ชีท ไล่จากง่ายไปยาก
💡 เคล็ดลับ: จับทางจากชื่อเลยครับ — ตัวธรรมดา (SUMIF, COUNTIF) ใช้ได้แค่เงื่อนไขเดียว ตัวที่มี S ต่อท้าย (SUMIFS, COUNTIFS, AVERAGEIFS) รองรับหลายเงื่อนไขพร้อมกัน “S” มาจากคำว่า SUM/COUNT/AVERAGE + IF + S (หลาย) นั่นเอง
2. SUMIF กับ COUNTIF — รวมและนับตามเงื่อนไขเดียว
เริ่มจากชีท “SUMIF เงื่อนไขเดียว” ครับ ผมจำลองตารางร้านขายของออนไลน์ ที่มีหมวดสินค้าและยอดขายรายการละบรรทัด:
| หมวดสินค้า | ยอดขาย (บาท) |
|---|---|
| เสื้อผ้า | 25,000 |
| ของใช้ | 18,000 |
| เสื้อผ้า | 32,000 |
| เครื่องใช้ไฟฟ้า | 45,000 |
| ของใช้ | 9,000 |
| เสื้อผ้า | 15,000 |
ตรงคอลัมน์ B14 ของตารางสรุปผมใช้ SUMIF เพื่อรวมยอดขายเฉพาะหมวดเสื้อผ้า:
=SUMIF(A5:A10,A14,B5:B10)
โครงสร้างคือ =SUMIF( ช่วงที่ใช้เช็ค , เงื่อนไข , ช่วงที่อยากรวมค่า ) — ไล่อ่านว่า “ในคอลัมน์ A5:A10 หาแถวที่ตรงกับ A14 (เสื้อผ้า) แล้วรวมยอดขาย B5:B10 ของแถวนั้น” ครับ
ส่วน COUNTIF ที่คอลัมน์ C14 ใช้นับจำนวนรายการแทนการรวม:
=COUNTIF(A5:A10,A14)
ผลลัพธ์ที่ได้ครับ:
| หมวดสินค้า | ยอดรวม (SUMIF) | จำนวนรายการ (COUNTIF) |
|---|---|---|
| เสื้อผ้า | 72,000 | 3 |
| ของใช้ | 27,000 | 2 |
| เครื่องใช้ไฟฟ้า | 45,000 | 1 |
เห็นไหมว่าเสื้อผ้ามี 3 รายการ รวมกัน 72,000 บาท — อันนี้ใช้ได้จริงในร้านค้าขนาดเล็กครับ แต่งานจริงเงื่อนไขมักมากกว่าหนึ่ง นั่นแหละที่เราต้อง SUMIFS
3. SUMIFS — รวมตามหลายเงื่อนไขพร้อมกัน
ไปที่ชีท “SUMIFS หลายเงื่อนไข” ครับ คราวนี้ข้อมูลมี 4 คอลัมน์คือ สาขา / ประเภท / เดือน / ยอดขาย เช่น
| สาขา | ประเภท | เดือน | ยอดขาย (บาท) |
|---|---|---|---|
| กรุงเทพ | เสื้อผ้า | 8 | 25,000 |
| กรุงเทพ | ของใช้ | 8 | 18,000 |
| เชียงใหม่ | เสื้อผ้า | 8 | 32,000 |
| เชียงใหม่ | เครื่องใช้ไฟฟ้า | 9 | 45,000 |
| กรุงเทพ | เครื่องใช้ไฟฟ้า | 9 | 60,000 |
| เชียงใหม่ | ของใช้ | 9 | 9,000 |
| กรุงเทพ | เสื้อผ้า | 9 | 15,000 |
| เชียงใหม่ | เสื้อผ้า | 9 | 20,000 |
SUMIFS มีโครงสร้างที่ต่างจาก SUMIF — ช่วงที่รวมค่าอยู่ตำแหน่งแรก แล้วตามด้วยคู่ “ช่วงเงื่อนไข, เงื่อนไข” เรียงต่อกัน:
=SUMIFS( ช่วงที่รวมค่า , ช่วงเงื่อนไข1 , เงื่อนไข1 , ช่วงเงื่อนไข2 , เงื่อนไข2 , ... )
ลองดูสามโจทย์ในตารางสรุปครับ:
โจทย์ที่ 1 — สาขากรุงเทพ + ประเภทเสื้อผ้า:
=SUMIFS(D5:D12,A5:A12,"กรุงเทพ",B5:B12,"เสื้อผ้า")
ได้ 25,000 + 15,000 = 40,000 บาท ครับ
โจทย์ที่ 2 — สาขากรุงเทพ + เดือน 9:
=SUMIFS(D5:D12,A5:A12,"กรุงเทพ",C5:C12,9)
กรุงเทพเดือน 9 มี เครื่องใช้ไฟฟ้า 60,000 กับ เสื้อผ้า 15,000 รวม = 75,000 บาท
โจทย์ที่ 3 — ประเภทเสื้อผ้า + เดือน 9:
=SUMIFS(D5:D12,B5:B12,"เสื้อผ้า",C5:C12,9)
เสื้อผ้าเดือน 9 มี 32,000 (เชียงใหม่) + 15,000 (กรุงเทพ) + 20,000 (เชียงใหม่) = 67,000 บาท
💡 เคล็ดลับ: จำนวนคู่ “ช่วงเงื่อนไข, เงื่อนไข” เพิ่มได้แทบจะไม่จำกัดครับ (จริง ๆ แล้วใส่ได้ 127 คู่ของ range กับ เงื่อนไข) ยิ่งเพิ่มคู่ยิ่งกรองละเอียด — บอกได้เลยว่าการรวมยอดแบบ “สาขา + ประเภท + เดือน + แผนก” พร้อมกันทำได้สูตรเดียวโดยไม่ต้องกรองซ้ำ
4. COUNTIFS — นับตามหลายเงื่อนไข
มาที่ชีท “COUNTIFS AVERAGEIFS” ครับ เป็นข้อมูลพนักงานขาย 6 คน พร้อมสาขาและยอดขาย:
| พนักงานขาย | สาขา | ยอดขาย (บาท) |
|---|---|---|
| สมชาย ใจดี | กรุงเทพ | 120,000 |
| มานี มีสุข | เชียงใหม่ | 78,000 |
| วิภา แก้วใส | กรุงเทพ | 45,000 |
| อนุชา ศรีสุข | เชียงใหม่ | 98,000 |
| นิดา ทองดี | กรุงเทพ | 60,000 |
| ประเสริฐ กล้าหาญ | เชียงใหม่ | 85,000 |
COUNTIFS นับจำนวนแถวที่ตรงทุกเงื่อนไข โครงสร้างเหมือน SUMIFS แต่ไม่มี “ช่วงที่รวมค่า” เพราะแค่นับ:
=COUNTIFS( ช่วงเงื่อนไข1 , เงื่อนไข1 , ช่วงเงื่อนไข2 , เงื่อนไข2 , ... )
นับพนักงานที่อยู่สาขากรุงเทพ:
=COUNTIFS(B5:B10,"กรุงเทพ")
ได้ 3 คน — สมชาย, วิภา, นิดา ครับ
คราวนี้ลองเพิ่มเงื่อนไข “มียอดขาย 50,000 บาทขึ้นไป” แถมด้วย:
=COUNTIFS(B5:B10,"กรุงเทพ",C5:C10,">=50000")
เงื่อนไขเชิงตัวเลขแบบนี้เขียนเป็นข้อความในเครื่องหมายคำพูดได้ครับ สมชาย (120,000) กับ นิดา (60,000) ผ่าน ส่วนวิภา (45,000) ไม่ถึง จึงได้ 2 คน
5. AVERAGEIFS — หาค่าเฉลี่ยตามเงื่อนไข
ต่อด้วย AVERAGEIFS ใช้หาค่าเฉลี่ยเฉพาะกลุ่มที่ตรงเงื่อนไข โดยโครงสร้างเหมือน SUMIFS เป๊ะ:
=AVERAGEIFS( ช่วงที่หาค่าเฉลี่ย , ช่วงเงื่อนไข1 , เงื่อนไข1 , ... )
ลองหายอดขายเฉลี่ยของพนักงานสาขากรุงเทพ:
=AVERAGEIFS(C5:C10,B5:B10,"กรุงเทพ")
(120,000 + 45,000 + 60,000) / 3 = 75,000 บาท ครับ
ส่วนสาขาเชียงใหม่:
=AVERAGEIFS(C5:C10,B5:B10,"เชียงใหม่")
(78,000 + 98,000 + 85,000) / 3 = 87,000 บาท
เห็นภาพการใช้งานครบทั้งสามตัวแล้วใช่ไหมครับ — รวมใช้ SUMIFS, นับใช้ COUNTIFS, เฉลี่ยใช้ AVERAGEIFS
6. เทคนิค wildcard และเงื่อนไขช่วงเวลา
กลุ่ม SUMIFS/COUNTIFS รองรับ wildcard ในการเทียบข้อความเหมือน VLOOKUP ครับ:
- * แทนข้อความยาวแค่ไหนก็ได้ เช่น
"เสื้อ*"ตรงกับ “เสื้อผ้า”, “เสื้อเชิ้ต” - ? แทนตัวอักษร 1 ตัว เช่น
"ส?A"ตรงกับ “SBA”, “SCA”
เช่น นับรายการที่มีหมวดขึ้นต้นด้วย “เสื้อ”:
=COUNTIFS(B5:B12,"เสื้อ*")
นอกจากนี้ยังใช้เงื่อนไขช่วงวันที่/จำนวนได้ด้วยเครื่องหมายเปรียบเทียบ เช่น ">100000", "<=5000", หรือ ">=1/1/2026" เพื่อกรองตามช่วงเวลาครับ
📌 ข้อควรจำ: เงื่อนไขที่มีเครื่องหมายเปรียบเทียบต้องครอบด้วยเครื่องหมายคำพูด เช่น
">=50000"เสมอ แต่ถ้าเงื่อนไขเป็นค่าตัวเลขจริง (เดือน 9) เขียนตัวเลขล้วนได้เลย ไม่ต้องมีคำพูด
7. ตัวอย่างประยุกต์จากงานจริง
สถานการณ์ที่ 1: ร้านค้าออนไลน์สรุปยอดรายหมวด
ร้านค้ามีตารางออเดอร์หลายพันรายการ ใช้ SUMIF/COUNTIF สรุปยอดขายและจำนวนออเดอร์ตามหมวดสินค้าได้ทันที เหมือนชีท “SUMIF เงื่อนไขเดียว” — แก้ข้อมูลรายวันแล้วตัวเลขสรุปอัปเดตเองหมด
สถานการณ์ที่ 2: บริษัทหลายสาขาวิเคราะห์ยอดขาย
ฝ่ายขายใช้ SUMIFS กรองตามสาขา + ประเภท + เดือน เพื่อดูว่าสาขาไหนทำยอดได้มากที่สุดช่วงไหน เหมือนชีท “SUMIFS หลายเงื่อนไข” — ใช้เป็นข้อมูลวางแผนสต็อกและโปรโมชันได้เลย
สถานการณ์ที่ 3: ฝ่ายบุคคลคำนวณผลงานพนักงาน
HR ใช้ COUNTIFS นับจำนวนพนักงานที่ยอดถึงเป้าในแต่ละสาขา และ AVERAGEIFS หายอดขายเฉลี่ยต่อสาขา เหมือนชีท “COUNTIFS AVERAGEIFS” — ช่วยเปรียบเทียบผลงานได้อย่างเป็นธรรม
💡 เคล็ดลับ: แทนที่จะพิมพ์เงื่อนไขตายตัวในสูตร ลองเขียนเงื่อนไขไว้เป็นเซลล์แยก แล้วให้สูตรอ้างอิงเซลล์นั้น (เหมือนชีทแรกที่อ้าง A14) — จะได้เปลี่ยนเงื่อนไขได้โดยไม่ต้องแก้สูตรทีละตัว ดูแลง่ายกว่ามากครับ
8. ข้อควรระวังที่เจอบ่อย
ถึงจะใช้ไว แต่ก็มีกับดักที่ควรรู้ไว้ครับ:
| อาการ | สาเหตุ | วิธีแก้ |
|---|---|---|
| SUMIF/COUNTIF ไม่รองรับหลายเงื่อนไข | ใช้ฟังก์ชันแบบไม่มี S | สลับเป็น SUMIFS/COUNTIFS |
| เงื่อนไขเปรียบเทียบไม่ทำงาน | ลืมครอบเครื่องหมายคำพูด | เขียน ">=50000" ให้ครบ |
| ใช้ช่วงคอลัมน์ไม่ตรงกัน | ช่วงที่รวมกับช่วงเงื่อนไขขนาดไม่เท่า | ตรวจว่าเริ่ม/จบแถวเดียวกัน |
| ข้อมูลติดช่องว่าง/ข้อความ | เงื่อนไขพิมพ์ไม่ตรงเป๊ะ | ใช้ TRIM หรือ wildcard ช่วย |
| Wildcard ไม่ตรง | เพิ่ม * / ? ผิดตำแหน่ง | ทดสอบกับข้อมูลจริงดูก่อน |
9. เทคนิคค้นช่วงวันที่ — ใช้สองเงื่อนไขปิดช่วง
โจทย์ยอดฮิตของคนทำงานคือ “สรุปยอดทั้งเดือน” ซึ่งถ้าใช้ SUMIFS กับวันทีละวันจะเปลืองมาก แต่เราสามารถกรองทั้งช่วงด้วยการใส่เงื่อนไข 2 อัน ล้อมจุดเริ่มต้นกับจุดสิ้นสุดครับ
สมมติคอลัมน์ A เก็บวันขายจริง (เช่น 1/1/2026, 5/1/2026, …) และคอลัมน์ B เก็บยอดขาย ผมอยากได้ยอดรวมของเดือนมกราคม 2026 โดยไม่ต้องระบุทีละวัน:
=SUMIFS(B5:B100,A5:A100,">=1/1/2026",A5:A100,"<=31/1/2026")
หลักการคือใส่เงื่อนไขแรก “วันต้องไม่ก่อน 1 ม.ค.” และเงื่อนไขที่สอง “วันต้องไม่หลัง 31 ม.ค.” — คู่กันแล้วกลายเป็น “ทั้งเดือนมกราคม” เป๊ะ
💡 เคล็ดลับ: แทนที่จะพิมพ์วันที่แข็ง ๆ ในสูตร ลองเขียนวันเริ่มต้นกับวันสิ้นสุดไว้ที่เซลล์ เช่น F1 เก็บ 1/1/2026 กับ G1 เก็บ 31/1/2026 แล้วให้สูตรอ้าง
">="&F1และ"<="&G1— คราวหน้าเปลี่ยนเดือนก็แค่แก้ที่สองเซลล์นี้ สูตรลากใช้งานต่อได้เลยไม่ต้องไล่แก้อะไร
10. เทียบให้ชัด — ตัวไหนใช้ตอนไหน
หลายคนสับสนว่าฟังก์ชันในกลุ่มนี้ต่างกันยังไง ผมเทียบให้ดูเป็นตารางครับ:
| ฟังก์ชัน | ใช้ทำอะไร | จำนวนเงื่อนไข | โครงสร้างสำคัญ |
|---|---|---|---|
| SUMIF | รวมค่า | 1 | ช่วงเช็ค + เงื่อนไข + ช่วงรวม |
| COUNTIF | นับจำนวน | 1 | ช่วงเช็ค + เงื่อนไข |
| SUMIFS | รวมค่า | หลายเงื่อนไข | ช่วงรวมอยู่หน้า แล้วตามด้วยคู่ช่วง/เงื่อนไข |
| COUNTIFS | นับจำนวน | หลายเงื่อนไข | คู่ช่วง/เงื่อนไขเรียงต่อกัน |
| AVERAGEIFS | หาค่าเฉลี่ย | หลายเงื่อนไข | ช่วงเฉลี่ยอยู่หน้า แล้วตามด้วยคู่ช่วง/เงื่อนไข |
จำง่าย ๆ ครับ — ถ้าเงื่อนไขแค่หนึ่งอัน ใช้ตัวไม่มี S ก็พอ แต่พอเงื่อนไขเริ่มหลายตัว ให้ขยับไปใช้ตัว S ต่อท้ายเลย เพราะเขียนเงื่อนไขเพิ่มได้ไม่จำกัด ยิ่งกว่านั้นตัว S ยังใช้แทนตัวไม่มี S ได้ด้วยซ้ำ (SUMIFS กับเงื่อนไขเดียวก็ได้เหมือนกัน) แต่เผื่ออนาคตถ้าต้องเพิ่มเงื่อนไขอีก จะได้ไม่ต้องมาแก้สูตรใหม่
11. ตัวอย่างประยุกต์เพิ่มเติมจากงานจริง
สถานการณ์ที่ 4: ฝ่ายการเงินตัดยอดรายเดือนตามสาขา
นักบัญชีมีตารางใบเสร็จทั้งเดือน ใช้ SUMIFS กับเทคนิคค้นช่วงวันที่ (เหมือนหัวข้อ 9) ตัดยอดรวมของแต่ละสาขาในเดือนนั้น ๆ ได้ในสูตรเดียว แล้วทำเป็นตารางสรุปที่เลือกเดือนได้จาก dropdown — ตัวเลขอัปเดตเองทันทีที่เปลี่ยนเดือน ลดการนั่งกรองและคัดลอกไปมามาก
สถานการณ์ที่ 5: ร้านอาหารแยกยอดตามประเภทและช่วงเวลา
ร้านอาหารใช้ COUNTIFS นับจำนวนออเดอร์ที่เข้ามาในแต่ละช่วง เช่น “ออเดอร์ช่วงเที่ยงวันศุกร์” โดยใส่เงื่อนไขวันในสัปดาห์กับช่วงเวลา — ได้ข้อมูลไปวางแผนจัดพนักงานให้ตรงช่วงที่คนเยอะ ช่วยลดการรอคิวได้จริง
สถานการณ์ที่ 6: งานขายวิเคราะห์ยอดตามตัวแทนและภูมิภาค
ฝ่ายขายใช้ AVERAGEIFS หายอดเฉลี่ยต่อคนของแต่ละทีมหรือภูมิภาค แล้วเทียบกับเป้าที่ตั้งไว้ เพื่อดูว่าทีมไหนทำได้เหนือหรือต่ำกว่าเป้า — ใช้เป็นหลักฐานตั้งงบประมาณและจัดโควต้าปีหน้าได้อย่างมีเหตุผล
12. สรุป
มาถึงตรงนี้คุณคงเห็นภาพแล้วว่า SUMIF / COUNTIF / SUMIFS / COUNTIFS / AVERAGEIFS คือชุดเครื่องมือที่ช่วย “สรุปข้อมูลตามเงื่อนไข” ได้โดยไม่ต้องกรองมือเลยครับ
ขอสรุปใจความสำคัญไว้ให้:
- SUMIF / COUNTIF เหมาะกับเงื่อนไขเดียว ใช้ง่าย ใช้ได้ทุกเวอร์ชัน
- SUMIFS / COUNTIFS / AVERAGEIFS รองรับหลายเงื่อนไข ตัวเลือกหลักของงานจริง
- เงื่อนไขเปรียบเทียบยุคับเครื่องหมายคำพูดเสมอ เช่น
">=50000" - ใช้ wildcard กับข้อความ และใช้คู่เงื่อนไข
">="กับ"<="ล้อมช่วงวันที่ - เขียนเงื่อนไขไว้เป็นเซลล์แยก เพื่อให้แก้ทีหลังง่ายและไม่ต้องดัดแปลงสูตรบ่อย
เปิดไฟล์ตัวอย่าง แล้วไล่เล่นทั้ง 3 ชีทดูนะครับ เริ่มจากชีท “SUMIF เงื่อนไขเดียว” ดูความต่างของ SUMIF กับ COUNTIF จากนั้นไป “SUMIFS หลายเงื่อนไข” ลองเพิ่มเงื่อนไขเองดู แล้วปิดท้ายที่ “COUNTIFS AVERAGEIFS” เพื่อฝึกนับกับหาค่าเฉลี่ย
ถ้าคุณทำงานกับตารางข้อมูลเป็นประจำ ฟังก์ชันกลุ่มนี้คือของคู่บ้านเลยครับ บทความหน้าเราจะพาไปรู้จัก ฟังก์ชันข้อความ — LEFT, RIGHT, MID, TRIM, TEXTJOIN และ TEXT เพื่อจัดการข้อมูลที่เป็นตัวอักษรแบบมือโปร เจอกันครับ! 😊