เทพเอ็กเซล ช่วย "ปลุกเทพ Excel ในตัวคุณ"
0
  • No products in the cart.
Highlights : บทความแนะนำExcel ทั่วไป

Project Management การบริหารโครงการ สร้าง Gantt Chart และ S-Curve ด้วย Excel

Project Management S-Curve gantt chart บริหารโครงการ

หัวข้อการทำงานจริงลำดับถัดไปที่มีแฟนเพจเรียกร้องมาเยอะ นั่นก็คือเรื่องของ Project Management หรือ การบริหารโครงการด้วย Excel นั่นเอง โดยที่จะเป็นทั้งเรื่องของการทำ Gantt Chart และการทำ S-Curve ด้วย

แต่บอกไว้ก่อนว่าถ้าจะทำงาน Project Management อย่างจริงจัง ผมแนะนำให้ใช้โปรแกรม Microsoft Project ซึ่งออกแบบมาให้ทำงานแนวนี้โดยเฉพาะมากกว่านะครับ อย่างไรก็ตามถ้าโครงการเป็นงานที่ไม่ซับซ้อนมาก หรือองค์กรเราไม่มีโปรแกรม Microsoft Project ให้ใช้ เราก็ยังสามารถใช้ Microsoft Excel ทำงานแนวนี้ได้เช่นกัน (ก็อย่างที่บอกว่า Excel เป็น Super เป็ด ทำได้ทุกอย่าง)

ในบทความนี้ผมจะแสดงวิธีทำโดยใช้สูตร Excel ปกติ ร่วมกับ Conditional Format ซึ่งจะใช้ได้กับ Excel ทุก Version ให้ดูก่อน แต่ในบทความตอนต่อๆ ไปในอนาคต ยังมีวิธีอื่นๆ อีก เช่น ใช้ Power Query +Pivot Table +Pivot Chart มาช่วยอีก (ก็ผมชอบ Pivot นี่) รวมถึงอาจจะมีวิธี DAX & Data Model อีก

เพื่อไม่ให้เสียเวลา ไปดูวิธีแก้ปัญหาด้วยสูตรกันเลยครับ

ข้อมูลดิบ

เบื้องต้นเราจะมีการบันทึกข้อมูลว่ามีงานหลัก งานย่อย อะไรบ้าง เริ่มเมื่อไหร่ ใช้เวลาเท่าไหร่ถึงจะจบ ดังนี้

idงานย่อยงานหลักวันที่เริ่มระยะเวลางบประมาณ
1Sub Task 1Main 15/3/2020602000
2Sub Task 2Main 110/3/20201001600
3Sub Task 3Main 115/3/2020303000
4Sub Task 4Main 220/3/202071100
5Sub Task 5Main 225/3/202092900
6Sub Task 6Main 230/3/202071500
7Sub Task 7Main 24/4/20201101100
8Sub Task 8Main 29/4/20201201500
9Sub Task 9Main 214/4/20201001900
10Sub Task 10Main 319/4/20202102100
11Sub Task 11Main 324/4/20202402600
12Sub Task 12Main 329/4/20201902100
13Sub Task 13Main 34/5/20201501300
14Sub Task 14Main 39/5/20201601300
15Sub Task 15Main 314/5/20202101600
16Sub Task 16Main 319/5/20202902900

ซึ่งเราจะคำนวณวันที่จบได้จากข้อมูลวันเริ่ม และระยะเวลา ซึ่งถ้าเราไม่ได้สนใจว่าจะเป็นวันทำงานหรือวันหยุด เราก็ใช้วิธีบวกกันง่ายๆ ได้เลย ดังนี้

วันที่จบ

=[@วันที่เริ่ม]+[@ระยะเวลา]

Tips : ถ้าสนใจเรื่องวันทำการด้วย ก็ต้องใช้ WORKDAY มาช่วยดังนี้

=WORKDAY.INTL([@วันที่เริ่ม],[@ระยะเวลา],เลือกโหมดวันหยุดประจำสัปดาห์,วันหยุดพิเศษ)

แต่เพื่อความง่าย ผมจะขอไม่สนใจเรื่องวันทำการวันหยุดละกัน เอาบวกกันตรงๆ เลย

Project Management การบริหารโครงการ สร้าง Gantt Chart และ S-Curve ด้วย Excel 1

ทีนี้สมมติว่าเราจะแสดงข้อมูลเป็นราย Week เราก็เขียนหัวตารางว่า Week1 แล้วลากยาวไปด้านขวาเลย มันจะแสดงคำว่า Week2, Week3… ไปเรื่อยๆ เอายาวเท่าที่ต้องการ

ทีนี้ในบริเวณข้างบนของคอลัมน์ Week1 เราเขียนสูตรเพื่อคำนวณหาวันจันทร์ใน week เริ่มต้นในข้อมูลที่มี (assume ว่าเริ่มสัปดาห์ที่วันจันทร์) ดังนี้

=MIN(Table3[วันที่เริ่ม])-WEEKDAY(MIN(Table3[วันที่เริ่ม]),2)+1
Project Management การบริหารโครงการ สร้าง Gantt Chart และ S-Curve ด้วย Excel 2

จากนั้นช่องข้างๆ ก็เขียนว่าเอาช่องด้านซ้าย +7 ไปเรื่อยๆ เพื่อให้เพิ่มทีละสัปดาห์ แล้วลากยาวไปด้านขวา เพื่อถือว่าคือจุดเริ่มต้นของสัปดหา์นั้นๆ

Tips : ถ้าจะเพิ่มทีละเดือนให้ใช้ =EDATE(วันที่,1) เพื่อเพิ่มทีละ 1 เดือน ซึ่งถ้าเพิ่มทีละเดือนวันเริ่มต้นก็ควรเป็นเริ่มต้นเดือนด้วย

Tips2 : บางมีเราก็ใช้เป็น 1 คอลัมน์คือ 1 วันเลย จะได้ความละเอียดสูงสุด แล้วหดคอลัมน์ให้เล็กๆ แล้ว Group เป็น Week อีกทีก็ยังได้นะครับ

แต่ในที่นี้ผมจะแสดงข้อมูลเป็น 1 คอลัมน์ =1 Week ละกันครับ

Project Management การบริหารโครงการ สร้าง Gantt Chart และ S-Curve ด้วย Excel 3

สร้าง Gantt Chart

Gantt Chart นั้นคือกราฟแท่งที่เอาไว้แสดงข้อมูลว่างานแต่ละงานนั้นเริ่มต้นเมื่อไหร่ จบเมื่อไหร่ ซึ่งจะช่วยให้เราเข้าใจภาพรวมของโครงการมากขึ้น ว่างานไหนต้องทำก่อนหลังยังไง และยังเห็นว่าช่วงเวลาเดียวกันนั้นมีงานเยอะขนาดไหนด้วย

Project Management การบริหารโครงการ สร้าง Gantt Chart และ S-Curve ด้วย Excel 4
ตัวอย่าง Gantt Chart จาก https://www.projectengineer.net/3-simple-gantt-chart-examples/

Tips : นอกจากนี้ เรายังสามารถคำนวณ Critical Path หรือก็คืองานที่ถ้า Delay ปุ๊ปจะทำให้โครงการช้าขึ้นทันทีได้ด้วย แต่ผมขอไว้ทำให้ดูในบทความถัดๆ ไปละกันะครับ (ขอติดไว้ก่อนนะ เดี๋ยวจะซับซ้อนไป)

สำหรับบทความนี้ เราจะทำการ Allocate Budget ลงในตารางแต่ละช่อง แล้วใช้ Conditional Format Fill สีพื้นหลัง ให้มันออกมาเหมือน Gantt Chart นั่นเอง เรามาดูแต่ละขั้นตอนกันครับ

Allocate Budget

ต่อไปผมก็จะทำการ Allocate Budget ลงในตารางแต่ละช่อง โดยคำนวณจาก Portion ของระยะเวลาที่อยู่ในช่องนั้นหารด้วยระยะเวลาทั้งหมด

ดังนั้นเพื่อให้เห็นภาพ ผมจะคำนวณก่อนว่าแต่ละงานนั้นมีจำนวนวันในแต่ละช่องเท่าไหร่ ดังนี้ (หลักการคล้ายๆ การคำนวณเวลาในบทความนี้)

=MAX(MIN([@วันที่จบ],J$1)-MAX([@วันที่เริ่ม],I$1),0)

หมายเหตุ : ที่เขียน MAX เทียบกับ 0 เพื่อไม่ให้ค่าติดลบ

โดยที่เราจะใช้วิธี Copy Paste ไปด้านขวา แทนการลาก Fill Handle เพื่อที่ทำให้คอลัมน์ของ Table ไม่เลื่อนจากคอลัมน์วันที่เริ่ม และวันที่จบ (ถ้าใช้ Fill Handle การอ้างอิง Table จะเลื่อน)

Project Management การบริหารโครงการ สร้าง Gantt Chart และ S-Curve ด้วย Excel 5

จากนั้นเราเอาตัวเลขที่ได้ไปหารด้วยระยะวเลาแต่ละ Task ดังนั้นสูตรจึงเป็นดังนี้

=MAX(MIN([@วันที่จบ],J$1)-MAX([@วันที่เริ่ม],I$1),0)/[@ระยะเวลา]

ซึ่งจะได้ สัดส่วนการ Allocate Budget แบบนี้

Project Management การบริหารโครงการ สร้าง Gantt Chart และ S-Curve ด้วย Excel 6

แล้วเราค่อยเอา สัดส่วนไปคูณกับ งบประมาณ ก็จะได้งบประมาณราย Week ดังนี้ โดยที่หากรวมงบประมาณตลอดช่วงเวลาของ Task นั้นๆ ก็จะได้งบประมาณรวมของ Task นั้นๆ นั่นเอง แบบนี้แสดงว่าการ Allocate ของเราถูกต้องแล้ว

Project Management การบริหารโครงการ สร้าง Gantt Chart และ S-Curve ด้วย Excel 7

Fill สี Gantt Chart

dเราจะเอา Style ของ Table เดิมที่เป็นลายๆ ออกไปซะ โดยเลือกให้เป็นสีแบบ None เพื่อที่เราจะใส่ Conditional Format ได้อย่างสวยงาม

Project Management การบริหารโครงการ สร้าง Gantt Chart และ S-Curve ด้วย Excel 8

ให้เราใส่ Conditional Format ว่าถ้าค่ามากกว่า 0 ให้ Fill สี Background และให้ทำสี Font ให้สีเป็นสีเดียวกับ Background ด้วย (หรือจะทำให้เข้มกว่า BG นิดๆ ก็ได้จะได้เห็นเลข แต่ไม่น่าเกลียด)

ส่วนถ้าเป็นเลข 0 ก็ให้เปลี่ยนสี Font เป็นสีขาวซะ จะได้มองไม่เห็น

Project Management การบริหารโครงการ สร้าง Gantt Chart และ S-Curve ด้วย Excel 9

นี่คือส่วนของ Gantt Chart ก็น่าจะถือว่าเสร็จแล้วล่ะ ต่อไปจะเป็นการทำ S-Curve

สร้าง S-Curve

การสร้าง S-Curve จริงๆ แล้วไม่มีอะไรมากไปกว่าการ Plot กราฟเส้น โดยให้แกน x เป็นวันที่ ส่วนแกน y เป็น %งานสะสมในแต่ละช่วงเวลา ซึ่งโดยทั่วไป %งานสะสมจะพุ่งขึ้นเร็วในช่วงกลางๆ (เพราะทำหลาย Task พร้อมกันมากที่สุด) ทำให้กราฟดูเป็นรูปตัว S นั่นเอง แต่ในชีวิตจริงจะเหมือน S แค่ไหนก็เป็นอีกเรื่องนึงนะ 555

Project Management การบริหารโครงการ สร้าง Gantt Chart และ S-Curve ด้วย Excel 10
ตัวอย่าง S-Curve จาก https://www.ntaskmanager.com/blog/s-curve-in-project-management/

โดยทั่วไป ในงานจริงๆ เรามักจะมีการ Plot S-Curve 2 เส้นเทียบกันนั่นคือ Planed vs Actual S-Curve เพื่อเทียบว่าโครงการของจริงเป็นไปตามแผนที่วางแผนไว้แค่ไหน? ซึ่งเราจะเอามิติไหนมาเทียบกันก็ได้ เช่น งบประมาณ vs ค่าใช้จ่ายจริง , วันที่วางแผน vs วันที่ใช้จริง, output ที่วางแผน vs output จริง เป็นต้น

Project Management การบริหารโครงการ สร้าง Gantt Chart และ S-Curve ด้วย Excel 11
ตัวอย่าง S-Curve จาก https://www.ntaskmanager.com/blog/s-curve-in-project-management/

สำหรับในเคสของเรานั้น สำหรับการ Plan ผมจะใช้เรื่องของ Budget มาเป็นตัวแทน แต่สำหรับตัว Actual ผมขอไม่ทำให้ดูนะครับ เพราะก็แค่เป็นการทำ Gantt Chart อีกตารางนึงแค่นั้นเอง เพื่อนๆ น่าจะทำเองได้เนอะ

งั้นมาดูการทำ S-Curve ของตัว Budget กันดีกว่า

S-Curve ของ Budget

ซึ่งจะเห็นว่าจริงๆ แล้วสามารถใช้การ SUM Budget ในแต่ละ Week ธรรมดาๆ ก็ได้ แต่ในที่นี้ผมจะใช้ SUBTOTAL มาช่วย เพื่อให้สามารถเปลี่ยนผลรวมไปตามการ Filter ตารางได้ (เดี๋ยวผมจะใช้ Slicer กดเอา)

=SUBTOTAL(9,ProjectTable[Week1])
Project Management การบริหารโครงการ สร้าง Gantt Chart และ S-Curve ด้วย Excel 12

จากนั้นให้ลาก Fill Handle ไปด้านขวาเพื่อให้มันเปลี่ยนคอลัมน์ในตารางไปเรื่อยๆ
จากนั้น งบประมาณสะสมสามารถใช้ SUM แบบ Lock จุดเริ่มต้นอย่างเดียวได้เลย

=SUM($I$2:I2)

Project Management การบริหารโครงการ สร้าง Gantt Chart และ S-Curve ด้วย Excel 13

จากนั้นเราสร้าง %งบประมาณสะสมขึ้นมา แล้วทำการ plot กราฟเส้น ซะ โดยให้แกน x เป็นวันที่ แกน y เป็น %งบประมาณสะสม เป็นอันจบการสร้าง S-Curve ครับ

Project Management การบริหารโครงการ สร้าง Gantt Chart และ S-Curve ด้วย Excel

เพิ่ม Slicer เพื่อให้มีลูกเล่นในการ Filter

เวลาเราทำข้อมูลเป็น Table แล้ว ใน Excel 2013 ขึ้นไปจะสามารถใช้ Slicer กับ Table ได้ด้วย เช่น ผมให้คนใช้งานสามารถกด Slicer เพื่อเลือกดูงานหลักที่สนใจก็ได้

ซึ่งพอกด Slicer แล้ว ตารางจะถูก Filter ซึ่งจะส่งผลให้การคำนวณจาก SUBTOTAL ลดลงไปกราฟก็เลยเปลี่ยนตามได้ด้วยนั่นเอง

Project Management การบริหารโครงการ สร้าง Gantt Chart และ S-Curve ด้วย Excel 14

ปรับแต่งความสวยงาม

ถ้ากลัวคอลัมน์แคบไปจนมองไม่เห็น เราก็ปรับการ Alignment ให้เป็นแนวตั้งหรือเฉียงๆ หน่อยได้ รวมถึงจะปรับ Format ของวันที่ให้อ่านง่ายขึ้นก็ได้นะครับ

ถ้าตัว Fill มันดูทึบไป อาจตีกรอบบนล่างให้เป็นสีขาวก็ได้นะ

นอกจากนี้เรายังติ๊กเอา Filter Button ของ Table ออกได้ ในขณะที่ยังใช้ Slicer ได้อยู่เหมือนเดิมด้วยนะ จะได้ไม่ต้องมีปุ่มเกะกะ แต่ผมขอไม่ปรับอะไรเรื่องของความสวยงามมากแล้วกันนะ อิอิ

Project Management การบริหารโครงการ สร้าง Gantt Chart และ S-Curve ด้วย Excel 15

สรุป

หวังว่าเทคนิคการทำ Project Management การบริหารโครงการ สร้าง Gantt Chart และ S-Curve ด้วย Excel ที่ผมนำเสนอในบทความนี้จะเป็นประโยชน์กับเพื่อนๆ นะครับ

แต่เดี๋ยวในตอนต่อไปผมจะใช้ Pivot Table + Power Query ทำ Gannt Chart ให้ดู ซึ่งจะสามารถสร้างรายงานที่ยืดหยุ่นกว่าเดิมได้มากเลยครับ รวมถึงเรื่องของการทำ Critical Path ด้วยเนอะ ใครอยากให้มีแง่มุมอื่นอีกก็สามารถบอกได้นะครับ

แชร์ความรู้ให้เพื่อนๆ ของคุณ
  • 2.3K
  •  
  •  
  •  
  •  
  • 2.3K
  •  
  •  
  •  
  •  
Sira Ekabut
the authorSira Ekabut
• Microsoft Office Specialist : Excel ระดับ Expert • ก่อตั้งเว็บไซต์และ แฟนเพจเทพเอ็กเซล คนติดตาม 8 หมื่นคน+, คลิปวีดีโอ 1 ล้าน Views + • หนังสือ Best Seller คอมพิวเตอร์ : Excel Level Up! , จอมเวท เทพ Excel , Excel Power Up!วิทยากรใน SkillLane.com คอร์สออนไลน์ชั้นนำ / อบรม Excel ให้บริษัทชั้นนำ

Leave a Reply