ใน EP.5 เราเพิ่มมิติเวลาให้ตาราง KPI — ดูแนวโน้มรายเดือน, YTD สะสม, Sparklines แสดง trend
แต่ตารางของเรายังมีปัญหาใหญ่: ไม่รู้ว่า KPI ตัวไหนเป็นของใคร
จากประสบการณ์ทำงานกับองค์กร SME มากว่า 10 ปี ปัญหาที่เจอบ่อยที่สุดไม่ใช่เรื่องสูตร แต่เป็นเรื่อง ความรับผิดชอบ — KPI ที่ไม่มีเจ้าของ ก็เหมือนงานที่ไม่มีคนทำ สุดท้ายไม่มีใครสนใจ
ในตอนนี้เราจะเพิ่ม Owner (เจ้าของ KPI) และ Department (ฝ่าย) ให้ตาราง KPI แล้วใช้ Filter ดูเฉพาะคน เฉพาะฝ่าย และสร้าง สรุปผลรายคน ด้วย SUMIF/COUNTIF
TL;DR: เพิ่ม Column Owner + Department พร้อม Data Validation Dropdown, ใช้ Filter ดู KPI เฉพาะคน/ฝ่าย, สร้าง Owner Summary ด้วย COUNTIF/COUNTIFS นับ KPI ที่ On Track/At Risk/Below Target ต่อคน ดาวน์โหลด template ฟรีท้ายบทความ
สิ่งที่ต้องเตรียม
- ความรู้จาก EP.3-5 (สูตร + Conditional Formatting + Monthly Tracking)
- ถ้ายังไม่ได้ทำ EP ก่อนหน้า แนะนำกลับไปดู EP.3, EP.4, EP.5
หรือ ดาวน์โหลด EP6-KPI-With-Owners.xlsx ฟรี ที่ท้ายบทความ เพื่อทำตามไปพร้อมกัน
ทำไมต้องมีเจ้าของ KPI?
สมมติองค์กรมี KPI 20 ตัว ทุกตัวคำนวณถูก สีสวย trend ดี แต่พอถามว่า “Churn Rate ที่แดงมา 3 เดือน ใครรับผิดชอบ?” ไม่มีใครตอบได้
เคยเจอองค์กรหนึ่งที่ทำ KPI Dashboard สวยมาก แต่ไม่มี Owner column — พอผลไม่ดี ทุกคนชี้นิ้วไปที่คนอื่น สุดท้ายไม่มีใครแก้ปัญหา ทำ Dashboard มาก็เท่านั้น
KPI ที่ดีต้องมี 3 อย่าง:
1. วัดได้ (EP.3 — สูตร)
2. เห็นชัด (EP.4-5 — สี + trend)
3. มีเจ้าของ (EP.6 — วันนี้!)
KPI 15 ตัวจาก 4 ฝ่าย
ตอนนี้เราจะขยายจาก Sales KPI 6 ตัวใน EP.5 เป็น 15 KPI จาก 4 ฝ่าย เพื่อให้เห็นภาพจริงของการมี หลายเจ้าของ
| # | KPI | ฝ่าย | เจ้าของ | ประเภท |
|---|---|---|---|---|
| 1 | ยอดขาย (Sales Revenue) | Sales | สมชาย | Regular |
| 2 | จำนวนลูกค้าใหม่ (New Customers) | Sales | สมชาย | Regular |
| 3 | อัตราปิดการขาย (Close Rate) | Sales | สมชาย | Regular |
| 4 | ต้นทุนต่อลูกค้าใหม่ (CAC) | Sales | วิภา | Inverse |
| 5 | อัตราลูกค้ายกเลิก (Churn Rate) | Sales | วิภา | Inverse |
| 6 | อัตราการลาออก (Turnover Rate) | HR | อรุณ | Inverse |
| 7 | เวลาสรรหาเฉลี่ย (Time to Hire) | HR | อรุณ | Inverse |
| 8 | ความพึงพอใจพนักงาน (Employee Satisfaction) | HR | พรทิพย์ | Regular |
| 9 | ชั่วโมงอบรมต่อคน (Training Hours/Person) | HR | พรทิพย์ | Regular |
| 10 | กำไรขั้นต้น (Gross Margin %) | Finance | ธนา | Regular |
| 11 | ค่าใช้จ่ายต่อรายได้ (Expense Ratio) | Finance | ธนา | Inverse |
| 12 | ระยะเวลาเก็บหนี้ (Collection Days) | Finance | ธนา | Inverse |
| 13 | อัตราของเสีย (Defect Rate) | Operations | มานะ | Inverse |
| 14 | Delivery On-time Rate | Operations | มานะ | Regular |
| 15 | Customer Satisfaction Score | Operations | สุดา | Regular |
ทำไมเลือก KPI เหล่านี้:
- Sales (5 ตัว, 2 คน) — ต่อยอดจาก EP.5 + แบ่ง Owner เป็น 2 คน (สมชาย ดูยอดขาย, วิภา ดูต้นทุน+การรักษาลูกค้า)
- HR (4 ตัว, 2 คน) — เป็น KPI พื้นฐานที่ HR ทุกที่ต้องมี
- Finance (3 ตัว, 1 คน) — ดูสุขภาพการเงินองค์กร
- Operations (3 ตัว, 2 คน) — คุณภาพสินค้าและบริการ
สังเกตว่า บางฝ่ายมีหลายคนดูแล และ บางคนดูแลหลาย KPI — นี่คือสถานการณ์จริงในองค์กร
Step 1: เพิ่ม Column Owner + Department
โครงสร้างตารางใหม่
ต่อยอดจาก EP.5 เพิ่ม 2 Column ด้านหน้า:
| Department | Owner | KPI Name | Type | Target | Actual | Achievement % | Status |
วิธีทำ:
- Insert 2 Columns ก่อน Column A (คลิกขวาที่ Column A → Insert → 2 Columns)
- Column A = Department (ฝ่าย)
- Column B = Owner (เจ้าของ)
- KPI Name เลื่อนไปเป็น Column C
Tip: ใส่ Department + Owner ก่อน KPI Name เพื่อให้ Sort และ Filter ทำงานได้ง่าย — เวลา Sort ตาม Department ข้อมูลจะจัดกลุ่มสวยงาม
Step 2: Data Validation — Dropdown สำหรับ Owner & Department
ไม่ควรให้พิมพ์ชื่อเอง เพราะ “สมชาย” กับ “สมชาย ” (มีเว้นวรรค) จะกลายเป็นคนละคน — SUMIF จะนับผิด
สร้าง Sheet “Reference” สำหรับรายชื่อ:
- สร้าง Sheet ใหม่ชื่อ Reference
- Column A = Departments: Sales, HR, Finance, Operations
- Column B = Owners: สมชาย, วิภา, อรุณ, พรทิพย์, ธนา, มานะ, สุดา
ใส่ Data Validation:
Department Column:
1. เลือก Column A ทั้ง Column (ในตาราง KPI)
2. Data → Data Validation
3. Allow: List
4. Source: =Reference!$A$2:$A$5
Owner Column:
1. เลือก Column B ทั้ง Column
2. Data → Data Validation
3. Allow: List
4. Source: =Reference!$B$2:$B$8
ตอนนี้ทุกครั้งที่คลิก Cell ใน Column Department หรือ Owner จะมี Dropdown ให้เลือก ไม่ต้องพิมพ์เอง ป้องกันพิมพ์ผิด
Dependent Dropdown (ขั้นสูง — ทำหรือไม่ทำก็ได้):
ถ้าอยากให้เลือก Department ก่อน แล้ว Owner แสดงเฉพาะคนในฝ่ายนั้น ต้องใช้ INDIRECT + Named Ranges — ซับซ้อนกว่า ตอนนี้ข้ามไปก่อน เราจะสอนในตอนหลังครับ
Step 3: ใส่ข้อมูลตัวอย่าง
ข้อมูลตัวอย่างสำหรับ SME ที่มีพนักงาน 100-300 คน:
Sales — สมชาย
| KPI | Target | Actual | Achievement % |
|---|---|---|---|
| ยอดขาย | 10,000,000 | 9,800,000 | 98% |
| ลูกค้าใหม่ | 25 ราย | 28 ราย | 112% |
| Close Rate | 30% | 31% | 103% |
Sales — วิภา
| KPI | Target | Actual | Achievement % |
|---|---|---|---|
| CAC | ≤ 5,000 | 4,800 | 104% (Inverse) |
| Churn Rate | ≤ 3% | 3.5% | 83% (Inverse) |
HR — อรุณ
| KPI | Target | Actual | Achievement % |
|---|---|---|---|
| Turnover Rate | ≤ 5% | 7% | 60% (Inverse) |
| Time to Hire | ≤ 30 วัน | 25 วัน | 117% (Inverse) |
HR — พรทิพย์
| KPI | Target | Actual | Achievement % |
|---|---|---|---|
| Employee Satisfaction | 4.0/5.0 | 4.2 | 105% |
| Training Hours | 20 ชม./คน | 18 ชม. | 90% |
Finance — ธนา
| KPI | Target | Actual | Achievement % |
|---|---|---|---|
| Gross Margin | 35% | 33% | 94% |
| Expense Ratio | ≤ 25% | 28% | 88% (Inverse) |
| Collection Days | ≤ 45 วัน | 52 วัน | 84% (Inverse) |
Operations — มานะ
| KPI | Target | Actual | Achievement % |
|---|---|---|---|
| Defect Rate | ≤ 2% | 3.5% | 25% (Inverse) |
| Delivery On-time | 95% | 91% | 96% |
Operations — สุดา
| KPI | Target | Actual | Achievement % |
|---|---|---|---|
| Customer Satisfaction | 4.5/5.0 | 4.3 | 96% |
สังเกตว่าข้อมูลออกแบบมาให้ สมจริง — ไม่ได้ดีหมดทุกตัว เช่น อรุณ มี Turnover Rate แดง (60%) แต่ Time to Hire เขียว (117%), มานะ มี Defect Rate แดงมาก (25%)
Step 4: Filter — ดู KPI เฉพาะคน/ฝ่าย
Filter คือเครื่องมือที่ทำให้ ผู้บริหารแต่ละฝ่ายเห็นแค่ KPI ของตัวเอง ไม่ต้องเลื่อนดูทั้งตาราง
เปิด Filter:
- คลิก Cell ใดก็ได้ในตาราง
- Data → Filter (หรือ Ctrl+Shift+L)
- แต่ละ Column จะมี ลูกศร Dropdown ปรากฏ
Filter ตาม Department:
- คลิกลูกศรที่ Column Department
- เอาเครื่องหมายถูกออกจาก (Select All)
- ติ๊กเฉพาะ Sales
- กด OK
ตารางจะแสดง เฉพาะ KPI ฝ่าย Sales — ซ่อนฝ่ายอื่นทั้งหมด
Filter ตาม Owner:
- คลิกลูกศรที่ Column Owner
- เลือกเฉพาะ อรุณ
ตอนนี้เห็น เฉพาะ KPI ของอรุณ — Turnover Rate 60% แดง, Time to Hire 117% เขียว เห็นชัดเลยว่าอรุณต้องโฟกัสที่ Turnover Rate
Filter ตาม Status:
- คลิกลูกศรที่ Column Status
- เลือกเฉพาะ Below Target
เห็น KPI ที่มีปัญหาทั้งหมด ข้ามฝ่าย — ผู้บริหารใช้วิธีนี้หา “จุดแดง” ได้เร็วมาก
Clear Filter:
ลบ Filter กลับมาดูทั้งหมด: Data → Clear (หรือคลิกลูกศร → Select All)
Tip: Filter ไม่ได้ลบข้อมูล แค่ซ่อน Row ที่ไม่ตรงเงื่อนไข — กด Clear Filter เมื่อไหร่ข้อมูลกลับมาครบ
Step 5: Sort — จัดกลุ่มตาม Department / Owner
Sort ตาม Department:
- คลิก Cell ใดก็ได้ใน Column Department
- Data → Sort A to Z
KPI จะจัดกลุ่มตามฝ่าย: Finance → HR → Operations → Sales — เห็นภาพรวมแต่ละฝ่ายชัดเจน
Sort หลาย Column (Custom Sort):
- Data → Sort
- Sort by: Department (A to Z)
- Add Level → Then by: Owner (A to Z)
- Add Level → Then by: Achievement % (Smallest to Largest)
ผลลัพธ์: KPI จัดกลุ่มตามฝ่าย ภายในฝ่ายจัดตามเจ้าของ ภายในเจ้าของเรียงจาก แย่สุดขึ้นก่อน — ผู้บริหารเห็น KPI ที่ต้องแก้ไขก่อนเป็นลำดับแรก
Step 6: Owner Summary — สรุปผลรายคน
นี่คือส่วนที่ทำให้ตาราง KPI มีคุณค่ามากขึ้นอีกระดับ — สรุปภาพรวมของแต่ละคน ว่ามี KPI กี่ตัว ผ่านกี่ตัว มีปัญหากี่ตัว
สร้าง Sheet “Owner Summary”:
| Owner | ฝ่าย | KPI ทั้งหมด | On Track | At Risk | Below Target | % On Track |
|---|---|---|---|---|---|---|
| สมชาย | Sales | 3 | 3 | 0 | 0 | 100% |
| วิภา | Sales | 2 | 1 | 1 | 0 | 50% |
| อรุณ | HR | 2 | 1 | 0 | 1 | 50% |
| พรทิพย์ | HR | 2 | 1 | 1 | 0 | 50% |
| ธนา | Finance | 3 | 0 | 2 | 1 | 0% |
| มานะ | Operations | 2 | 0 | 1 | 1 | 0% |
| สุดา | Operations | 1 | 0 | 1 | 0 | 0% |
สูตรที่ใช้:
จำนวน KPI ทั้งหมดของแต่ละคน:
=COUNTIF(KPI!$B$2:$B$16,A2)
- นับจำนวน Row ที่ Column Owner (B) ตรงกับชื่อใน A2
จำนวน KPI ที่ On Track:
=COUNTIFS(KPI!$B$2:$B$16,A2,KPI!$H$2:$H$16,"On Track")
- COUNTIFS นับ 2 เงื่อนไขพร้อมกัน: Owner ตรงกับชื่อ และ Status เป็น “On Track”
จำนวน KPI ที่ At Risk:
=COUNTIFS(KPI!$B$2:$B$16,A2,KPI!$H$2:$H$16,"At Risk")
จำนวน KPI ที่ Below Target:
=COUNTIFS(KPI!$B$2:$B$16,A2,KPI!$H$2:$H$16,"Below Target")
% On Track:
=IF(C2=0,"",D2/C2)
- จำนวน On Track หาร จำนวน KPI ทั้งหมด
เพิ่ม Conditional Formatting:
ใส่ Color Scales ให้ Column % On Track — สีเขียว 100%, เหลือง 50%, แดง 0% เห็นชัดเลยว่า ใครทำได้ดี ใครต้องช่วย
Department Summary (เพิ่มอีกตาราง):
สร้างตารางสรุปรายฝ่ายด้วย:
| ฝ่าย | KPI ทั้งหมด | On Track | At Risk | Below Target | % On Track |
|---|---|---|---|---|---|
| Sales | 5 | 4 | 1 | 0 | 80% |
| HR | 4 | 2 | 1 | 1 | 50% |
| Finance | 3 | 0 | 2 | 1 | 0% |
| Operations | 3 | 0 | 2 | 1 | 0% |
สูตรเหมือนกัน แค่เปลี่ยน Column ที่อ้างอิงจาก Owner เป็น Department
ดูแค่ตารางนี้ก็รู้แล้วว่า Sales ไปได้ดี แต่ Finance กับ Operations ต้องช่วยด่วน
Common Mistake: เจ้าของ KPI กับผู้ทำ KPI ไม่ใช่คนเดียวกัน
ข้อผิดพลาดที่เจอบ่อยมากคือ ตั้ง Owner เป็นคนที่ทำงาน แทนที่จะเป็นคนที่รับผิดชอบผลลัพธ์
ตัวอย่าง: “ยอดขาย” ทีม Sales ทั้งฝ่ายช่วยกันขาย แต่ Owner ต้องเป็น Head of Sales (สมชาย) ไม่ใช่พนักงานขายทุกคน
หลักการ:
– Owner = คนที่ต้องมาตอบ เมื่อ KPI ไม่ถึงเป้า
– Owner ไม่จำเป็นต้องทำเอง แต่ต้อง รับผิดชอบผลลัพธ์
– KPI 1 ตัวควรมี Owner แค่คนเดียว — ถ้ามีหลายคน จะไม่มีใครรับผิดชอบจริง
เคยเห็นองค์กรที่ใส่ Owner เป็น “ทุกคน” ในทุก KPI — สรุปเหมือนไม่มี Owner เลย เพราะไม่มีใครรู้สึกว่าเป็นหน้าที่ตัวเอง
Excel เริ่มมีข้อจำกัด — สังเกตไหม?
ลองสังเกตดูนะครับ ตอนนี้ตาราง KPI ของเรามี:
– 15 KPI × 8 Columns = 120 Cells แค่ข้อมูลหลัก
– ถ้าเป็น Monthly Tracking (EP.5) × 12 เดือน = 180+ Cells เพิ่ม
– Owner Summary อีก Sheet
– Department Summary อีก Sheet
ยังจัดการได้ แต่เริ่มเห็นปัญหา:
– ถ้าสมชายลาออก ต้อง หาชื่อเปลี่ยนทุก Cell ที่มีชื่อสมชาย
– ถ้าเพิ่มพนักงานใหม่ ต้อง แก้ Data Validation ทุก Sheet
– ถ้าอยากดู KPI ของสมชายย้อนหลัง 6 เดือน ต้อง เปิดหลาย Sheet สลับไปมา
ปัญหาเหล่านี้จะยิ่งชัดขึ้นเรื่อยๆ ในตอนต่อไป — EP.7 จะเพิ่มน้ำหนัก KPI อีก ทำให้ตารางซับซ้อนขึ้นอีก
สรุป: สิ่งที่ได้เรียนรู้ใน EP.6
| สิ่งที่ทำ | Excel Skill ที่ได้ |
|---|---|
| เพิ่ม Owner + Department | Table design, column planning |
| Dropdown เลือกชื่อ/ฝ่าย | Data Validation (List, Sheet reference) |
| ดูเฉพาะคน/ฝ่าย | Filter (single & multi-column) |
| จัดกลุ่มตามฝ่าย | Sort (multi-level) |
| สรุปผลรายคน | COUNTIF, COUNTIFS |
| สรุปผลรายฝ่าย | COUNTIFS (เปลี่ยน criteria) |
ตาราง KPI ของเราตอนนี้มีครบ: สูตร (EP.3) + สี (EP.4) + เวลา (EP.5) + เจ้าของ (EP.6) — เหลือแค่ใส่น้ำหนัก KPI แล้วรวมเป็น Dashboard
ลองทำเอง: ปรับให้เข้ากับองค์กรคุณ
- เปลี่ยนชื่อ Owner — ใส่ชื่อจริงของหัวหน้าแต่ละฝ่ายในองค์กร
- เพิ่ม/ลด Department — อาจมีฝ่ายอื่น เช่น Marketing, IT, Legal
- ปรับ KPI ตามจริง — เลือก KPI ที่องค์กรใช้จริง 3-5 ตัวต่อฝ่าย
- ทดลอง Filter — ลอง Filter ดู Below Target ข้ามทุกฝ่าย แล้วนำไปประชุมผู้บริหาร
ข้อจำกัดของตารางนี้ (แก้ใน EP ถัดไป)
| ข้อจำกัด | แก้ใน EP ไหน |
|---|---|
| ไม่มีน้ำหนัก KPI (ตัวไหนสำคัญกว่า) | EP.7 — KPI Weighting |
| ยังไม่รวมเป็น Dashboard หน้าเดียว | EP.8 — Complete Dashboard |
ตอนนี้เรามีครบ 4 มิติ: สูตร + สี + เวลา + เจ้าของ — EP.7 จะเพิ่มน้ำหนักเพื่อบอกว่า KPI ตัวไหนสำคัญกว่า แล้ว EP.8 จะรวมทุกอย่างเป็น Dashboard เต็มรูปแบบ
คำถามที่พบบ่อย (FAQ)
KPI 1 ตัวมี Owner ได้หลายคนไหม?
ไม่แนะนำ ถ้ามี Owner 2 คน จะไม่มีใครรับผิดชอบจริง COUNTIF ก็จะนับผิดเพราะ Cell มีชื่อ 2 ชื่อ ถ้าต้องการให้หลายคนเห็น KPI ตัวนั้น ให้ตั้ง Owner เป็น หัวหน้า ที่รับผิดชอบผลลัพธ์สุดท้ายแทน
Filter แล้วสูตร COUNTIF นับผิดไหม?
ไม่ผิดครับ COUNTIF นับจากข้อมูลจริง ไม่ได้นับจากสิ่งที่แสดงบนหน้าจอ แม้ Filter ซ่อน Row ไว้ COUNTIF ก็ยังนับ Row เหล่านั้นอยู่ ถ้าอยากนับเฉพาะ Row ที่แสดง ต้องใช้ SUBTOTAL แทน แต่สำหรับ Owner Summary ใช้ COUNTIF ปกติได้เลย
COUNTIF กับ COUNTIFS ต่างกันยังไง?
COUNTIF นับเงื่อนไข 1 อย่าง เช่น นับ KPI ที่ Owner เป็น “สมชาย” ส่วน COUNTIFS นับเงื่อนไข หลายอย่าง เช่น นับ KPI ที่ Owner เป็น “สมชาย” และ Status เป็น “On Track”
ถ้าพนักงานลาออกหรือย้ายฝ่าย ต้องทำอะไรบ้าง?
ต้องแก้ 3 ที่: (1) เปลี่ยนชื่อ Owner ในตาราง KPI ทุก Cell ที่มีชื่อคนนั้น (2) แก้ Data Validation list ใน Sheet Reference (3) แก้ Owner Summary — ลบแถวคนเก่า เพิ่มคนใหม่ ค่อนข้างยุ่งถ้ามีพนักงานเปลี่ยนบ่อย ปัญหานี้จะชัดขึ้นเรื่อยๆ เมื่อองค์กรโตขึ้น
ใช้ Table (Ctrl+T) ดีกว่า Range ธรรมดาไหม?
ดีกว่ามากสำหรับ EP นี้ เพราะ Table จะขยาย Filter อัตโนมัติเมื่อเพิ่มแถว Conditional Formatting ก็ขยายตาม และสูตรจะใช้ Structured Reference อ่านง่ายกว่า เช่น =COUNTIF(Table1[Owner],"สมชาย") แทน =COUNTIF($B$2:$B$16,"สมชาย")
ดาวน์โหลดฟรี: EP6-KPI-With-Owners.xlsx
ดาวน์โหลด EP6-KPI-With-Owners.xlsx ฟรี
ในไฟล์จะมี 4 Sheets:
– Instructions — คำแนะนำการใช้งานภาษาไทย
– KPI Data — ตัวอย่าง 15 KPI จาก 4 ฝ่าย 7 เจ้าของ พร้อมสูตร + CF ครบ
– Owner Summary — สรุปผลรายคนและรายฝ่าย ด้วย COUNTIF/COUNTIFS
– Template — ว่างเปล่า พร้อมใช้งานทันที (มี Dropdown + สูตร + CF)
ตอนต่อไป
ในตอนหน้า เราจะ:
– ให้ น้ำหนัก KPI — ตัวไหนสำคัญกว่าได้คะแนนมากกว่า
– คำนวณ Weighted Score ต่อคนและต่อฝ่าย
– เริ่มเห็นว่า Excel คำนวณซับซ้อนขึ้นเรื่อยๆ — สูตรยาวขึ้น เสี่ยงผิดมากขึ้น
[Link to EP 7 →]
หมายเหตุ: เนื้อหาในบทความนี้เขียนโดยทีม EsteeMATE โดยใช้ AI ช่วยในการร่างและจัดโครงสร้างเนื้อหา ทีมงานตรวจสอบความถูกต้องและปรับแต่งเนื้อหาทั้งหมดก่อนเผยแพร่
Tags: #KPI #Excel #MultipleOwners #COUNTIF #COUNTIFS #Filter #ExcelTutorial #PerformanceManagement
Series: Excel Performance Management (EP.6/30)