คุณเคยเบื่อหน่ายกับงบกำไร-ขาดทุน หน้าตาเดิมๆแบบนี้ไหมครับ?

แรกๆผมไม่ได้เบื่อนะครับ ก็ดูเป็นขั้นเป็นตอนดี ตรงตามรูปแบบมาตรฐาน
แต่พอต้องดูแบบนี้ทุกเดือน ทุกเดือน มันก็รู้สึกว่า
“มีอะไรที่ดีกว่านี้ไหม?”
แล้วก็พบว่า
มี !
นั่นคือ นำเสนอด้วยวิธีแบบนี้ครับ
การนำเสนอด้วยวิธีนี้ ก็คือการนำเสนอด้วยกราฟน้ำตก (Waterfall) นั่นเอง
แต่ไม่ใช่กราฟน้ำตกแแนวตั้ง เหมือนที่เราคุ้นเคยกัน

ขอเรียกกราฟน้ำตกแบบนี้ว่า
กราฟน้ำตกแนวนอน
ถ้าเราผ่าตัดกราฟน้ำตกแนวนอน จะได้หน้าตาแบบนี้ครับ
ใช่แล้วครับ! อันที่จริง กราฟน้ำตกแนวนอนก็คือกราฟ Stacked Bar นั่นเอง
กราฟ Stacked Bar ที่ว่า ในเอ็กเซลคือกราฟนี้ครับ

ดูเผินๆ เหมือนกราฟซ้อนกัน 2 ชั้นนะครับ เอาเข้าจริงคือ
กราฟซ้อนกัน 5 ชั้น
จริงๆแล้วจะทำแค่กราฟ 2 ชั้นก็ได้ แต่ถ้าข้อมูลเปลี่ยน เราต้องมานั่งเปลี่ยนสีกราฟเอง ทีละอัน ทีละอัน
คงเป็นเรื่องเซ็งจิตไม่น้อย T_T
แต่ถ้าเราทำเป็น 5 ชั้น แค่เซ็ตสีครั้งเดียว กราฟจะเปลี่ยนสีอัตโนมัติครับ
เจ้า 5 ชั้นที่ว่า ก็คือ

- Invisible ก็คือกราฟด้านล่างที่ทำหน้าที่ยกกราฟอื่นขึ้นไป เสมือนว่ากราฟอื่นกำลังลอยคว้างอยู่บนอากาศนั่นเอง พอสร้างเสร็จแล้ว เราจะปรับเป็น No Fill เพื่อจะได้มองไม่เห็น (หลอกตา ว่ากันตรงๆ)
- StartStop กราฟแท่งแรก กับกราฟแท่งสุดท้าย จากภาพด้านบน คือกราฟแท่งสีฟ้า
- Minus กราฟแสดงข้อมูลติดลบ หรือบอกว่าสิ่งนี้ทำให้ตัวเลขรวมมีค่าลดลง จากภาพคือกราฟแท่งสีแดง
- Plus กราฟแสดงข้อมูลติดบวก หรือบอกว่าสิ่งนี้ทำให้ตัวเลขรวมมีค่าเพิ่มขึ้น จากภาพคือกราฟแท่งสีเขียว
- Break กราฟแสดงจุดเบรก เพื่อให้เห็นว่าตอนนี้ตัวเลขรวมอยู่ที่เท่าไร จากภาพคือกราฟแท่งสีเทา
สร้างยังไงน่ะหรือครับ?
เริ่มจากเตรียมข้อมูล ต้องกระจายข้อมูลออกเป็น 5 ชั้น
จากเดิมข้อมูลอยู่ที่คอลัมน์ C เราก็ต้องกระจายไปใส่ตามชั้นต่างๆ ตามความหมายของข้อมูล
แบบนี้

ถ้ากระจายข้อมูลแบบ “แมนวล” ไปใส่ตามชั้นต่างๆคงไม่สนุกแน่นอน T_T
ถ้าอยากให้กราฟเปลี่ยนสีอัตโนมัติ เพราะต้องเพิ่ม คอลัมน์ทด เพื่อช่วยเป็นตัวอ้างอิงในการเขียนสูตร
จากภาพคือ เพิ่มคอลัมน์ C แล้วใส่ประเภทของกราฟลงไป เ่ช่น
- Revenue คือจุดเริ่ม เพราะฉะนั้นต้องเป็น StartStop
- Freight คือค่าขนส่ง เพราะฉะนั้นต้องเป็น Minus
- Discount คือส่วนลด เพราะฉะนั้นต้องเป็น Minus
- Net Sales คือจุดเบรก เพื่อแสดงให้เห็นตัวเลขรวม เพราะฉะนั้นต้องเป็น Break

เพื่อความสะดวก เราอาจใส่ Dropdown list ให้กับคอลัมน์ C
เวลาเลือก จะได้แค่คลิกๆๆ ไม่ต้องมานั่งพิมพ์ร่ำไป
วิธีการสร้าง Dropdown list ก็คือ
Data Validation นั่นเอง
เริ่มจากลากครอบข้อมูลที่ต้องการใส่ Dropdown list จากภาพคือเซลล์ C2:C13
ไปที่เมนู (ริบบอน) Data/Data Validation

ในช่อง Allow ให้เลือก List (ค่าดีฟอลต์คือ Any Value)
ใส่ลิตส์ที่ต้องการให้ขึ้นดร็อปดาวน์ลงไปใน Source
ถ้าเป็นเคสนี้ เราอาจใช้หัวตารางที่เราสร้างไว้แล้วได้เลย (E1:H1)

พอสร้างเสร็จ เราได้ดร็อปดาวน์แบบนี้ครับ

ง่ายขนาดนั้น!
อันที่จริง เราอาจไม่ต้องสร้างดร็อปดาวน์ก็ได้ เพราะในการทำงานจริง เราก็ต้องมาเลือกข้อมูลใส่ดร็อปดาวน์ทีละตัวๆ ซึ่งเป็นเรื่องเสียวลาพอควร ถ้าใครถนัดเขียนสูตรก็สามารถใช้สูตรแทนได้นะครับ ประหยัดเวลาได้พอควร
พอได้ตัวอ้างอิงในคอลัมน์ C แล้ว เราก็ใส่ค่าใหักับกราฟ StartStop, Break, Minus, Plus ด้วยสูตร
=IF($C2=E$1,$B2,0)
หรือก็คือ ถ้าหัวตาราง ตรงกับ ข้อมูลอ้างอิงในคอลัมน์ C ให้ดึงตัวเลข (คอลัมน์ B) มา ถ้าไม่ใช่ ให้เป็น 0
อย่าลืมล็อค (ใส่ดอลลาร์ไซน์ $) ให้ถูกด้วยนะครับ เพราะเราจะก็อปปี้สูตรนี้ไปยังกราฟอื่นๆด้วย

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

สำหรับสูตรของกราฟ Invisible ก็คือ
Invisible ก่อนหน้า + StartStop ก่อนหน้า + Break ก่อนหน้า + Plus ก่อนหน้า – Minus
เช่น ถ้าต้องการใส่สูตรของ Invisible ในช่อง D3 เราต้องใส่ว่า
=D2+E2+F2+H2-G3

พอลากสูตรลงมาข้างล่าง จะพบว่าตัวเลขไม่สมเหตุสมผล

สาเหตุก็เพราะ
ถ้าข้อมูลนั้นเป็น Break หรือ StartStop ส่วนที่เป็น Invisible ควรมีค่าเป็น 0
ดังนั้น เราต้องปรับสูตรใหม่ โดยเขียนเงื่อนไขว่า
ถ้าคอลัมน์อ้างอิง (คอลัมน์ C) เป็น Break หรือ StartStop ให้มีค่าเป็น 0 ถ้าไม่ใช่ ให้ดึงตัวเลขมา (คอลัมน์ B)
จากเคสนี้ สูตรในคอลัมน์ D3 ก็คือ
=IF(OR(C3=$E$1,C3=$F$1),0,D2+E2+F2+H2-G3)
เสร็จแล้วก็ก็อปปี้สูตรลงมาด้านล่าง (อาจลากครอบข้อมูลก่อน แล้วกด Ctrl+D ก็ได้นะครับ)

ข้อมูลครบแล้ว คราวนี้ก็ถึงเวลาสร้างกราฟ (ซะที)
ลากครอบข้อมูลที่ต้องใช้สร้างกราฟ จากภาพคือคอลัมน์ A, D, E, F, G, H
อ้อ! ต้องกดปุ่ม Ctrl ด้วยนะครับ ไม่งั้นจะเลือกข้อมูลข้ามคอลัมน์แบบนี้ไม่ได้
ไปที่เมนู (ริบบอน) Insert เลือกกราฟ Stacked Bar

จะได้กราฟไม่สวยมาอันนึง
แถมยังเรียงข้อมูลตรงกันข้ามกับสิ่งที่ควรจะเป็นด้วย
ฮ่วย!

เรียงข้อมูลแบบนี้ ไม่มีใครดูรู้เรื่องแน่นอน…
เราจึงต้องเปลี่ยนการเรียงข้อมูล ให้เรียงกลับด้าน (Reverse Order)
วิธีการคือ ดับเบิ้ลคลิกที่แกน Y (หรืออาจคลิกขวา แล้วเลือก Format Axis, หรืออาจคลิกที่แกน Y แล้วกด Ctrl+1 ก็ได้)
หน้าต่าง Format Axis จะโผล่ขึ้นมาทันใด ผ่าง!
ติ๊กเลือกตรงช่อง Categories in reverse order

กราฟจะเรียงตัวเหมือนข้อมูลต้นทางทุกกระเบียดนิ้ว
คราวนี้ เราควรปรับแต่งกราฟ โดยลบสิ่งที่ไม่จำเป็นทิ้งไป เช่น
- Legend
- Gridline
- Horizontal Axis
หน้าตาดีขึ้นไหมครับ ^_^

คราวนี้ก็ต้องทำกราฟ Invisible ให้มองไม่เห็น
หรือก็คือไม่ต้องใสสีนั่นเอง
ด้วยการคลิกกราฟ Invisible (จากภาพคือกราฟแท่งสีเหลือง) เลือก Format Data Series (หรือกด Ctrl+1) ก็ได้
หน้าต่าง Format Data Series จะโผล่ขึ้นมา ชะแว๊ป!
จากนั้นเลือกที่ Fill/No Fill

เริ่มใกล้เคียงความจริงแล้ว!

เพื่อความสวยงาม ควรปรับช่องว่างระหว่างกราฟให้แคบลง และปรับกราฟให้อ้วนขึ้น
หรือก็คือปรับ Gap Width นั่นเอง
คลิกขวาที่กราฟแท่งใดก็ได้ เลือก Format Data Series (เหมือนเมื่อกี๊เลย)
ถ้าเป็นกราฟแบบนี้ แนะนำ Gap Width ประมาณ 30% ครับ

สวยขึ้นใช่ไหมล่ะ! ^__^

ปรับเปลี่ยนสีกราฟให้ตรงตามความหมาย เช่น Minus สีแดง, Plus สีเขียว, StartStop สีเทา
เริ่มใกล้เคียงความจริงขึ้นทุกที!

เพื่อให้กราฟอ่านง่าย เราควรใส่ Data Label เข้าไปในกราฟด้วย
สำหรับกราฟน้ำตกแนวนอนนี้ เทคนิคการใส่ Data Label ให้สวยงามคือ
กราฟ Minus, Plus ให้ใส่แบบ Center
กราฟ StartStop, Break ให้ใส่แบบ Inside End
วิธีการใส่ Data Label คือ คลิกขวากราฟที่ต้องการ เลือก Add Data Labels
ถ้าต้องการเปลี่ยนตำแหน่งของ Data Label ให้เป็นแบบ Inside End
คลิกขวาที่ Data Label เลือก Format Data Labels
หน้าต่าง Format Data Labels จะโผล่ขึ้นมาทันใด พั่บ!!
ตรง Label Position เลือกให้เป็น Inside End

ได้ Data Label หน้าตาแบบนี้

Data Label ทำให้กราฟดูวุ่นวาย เพราะ 0 จะขึ้นยุ่บยั่บ ก่อกวนกราฟของเราจนน่าเกลียด T_T
เหตุผลที่ 0 ขึ้นมายุ่บยั่บแบบนี้ เพราะ
Data Label มีฟอร์แมตเหมือนข้อมูลต้นทาง
ข้อมูลต้นทางเรามีฟอร์แมตแบบนี้ครับ

จะเห็นว่ามี 0 ขึ้นเต็มไปหมด
ทำยังไง 0 ถึงจะหายไปน่ะหรือครับ?
ถ้า “ขยัน” หน่อย เราก็นั่งลบทีละอันก็ได้
แต่ผมไม่แนะนำวิธี “ขยัน” เพราะเรามีวิธีที่ “ฉลาด” กว่านั้น
วิธี “ฉลาด” ที่ว่าคือ เปลี่ยน Custom Number Format นั่นเอง
เราสามารถตั้งค่าได้ว่า ถ้าข้อมูลมีค่าเป็น 0 ไม่ต้องแสดงข้อมูลนั้น
หรือเขียนด้วยภาษาของ Custom Number Format ว่า
0;;
หรืออาจใส่เป็น
#,##0;;
ก็ได้ ถ้าข้อมูลมีค่าถึงหลักพัน และต้องการใส่ลูกน้ำลงไปให้อ่านง่าย
ขอไม่อธิบายเรื่อง Custom Number Format นะครับ ไม่งั้นบทความนี้จะยิ่งยาวกันไปใหญ่ (นี่ก็ยาวสุดๆแล้ว)
ผมแนะนำว่า เปลี่ยนฟอร์แมตที่ข้อมูลต้นทางเลยดีกว่า ฟอร์แมตของ Data Label จะได้เปลี่ยนตามไปด้วย
วิธีการคือ เลือกข้อมูลที่ต้องการเปลี่ยน Custom Number Format
เคสของเราคือ เซลล์ D2-H13
คลิกขวา เลือก Format Cell (หรือกด Ctrl+1 ก็ได้)
เลือกแท็ป Number
ส่วนที่เป็น Category ให้เลือก Custom เพื่อต้องการกำหนดรูปแบบเอง
ตรงช่อง Type พิมพ์
0;;
หรืออาจพิมพ์ #,##0;; ก็ได้ ถ้าข้อมูลมีค่าถึงหลักพัน

เลข 0 จะอันตรธานจากกราฟของเราทันที
ฟิ้วววว…

จริงๆ จะจบแค่นี้ก็ได้ แต่กราฟยังดูไม่ดีพอ
ถ้าจะให้ดี ควรปรับตัวหนังสือให้เป็นสีขาว เพราะสีกราฟของเราเป็นสีเข้ม
เส้นแกน Y ไม่ต้องมี จะดูสวยกว่า
ปรับเส้นแกน Y โดย ดับเบิ้ลคลิกที่แกน Y (หรือคลิกขวาที่แกน Y แล้วเลือก Format Axis ก็ได้)
ไปที่ Line Color แล้วเลือก No line

สำหรับผม เสร็จแล้วครับ ^__^

จะเห็นได้ว่า มีขั้นตอนต่างๆมากมาย ถ้าต้องการสร้างกราฟใหม่ เราคงไม่อยากทำขั้นตอนทั้งหมดนี้ซ้ำอีกรอบ
เราสามารถเซฟเท็มเพลตนี้ เก็บไว้ในเครื่องเราได้ครับ
ถ้าต้องการสร้างใหม่ แค่เตรียมข้อมูล แล้วก็เลือกเท็มเพลตนั้นซะ
แล้วก็เสร็จ!
วิธีการก็ง่ายมากๆ
คลิกส่วนใดของกราฟก็ได้ ไปที่ริบบอน Design/ Save As Template

จะมีหน้าต่างนึงโผล่ขึ้นมา ติ๊งหน่อง!
หน้าต่างนั้นบอกว่า เท็มเพลตที่เรากำลังสร้างนั้นจะถูกเก็บในโฟลเดอร์ใด และให้เราตั้งชื่อเท็มเพลตนั้น
สมมติตั้งชื่อว่า Waterfall_StackedBar_160701

กดปุ่ม Save เบาๆ
เป็นอันเสร็จพิธี
คราวนี้ พอต้องการสร้างกราฟใหม่อีกครั้ง เราก็เตรียมข้อมูลให้พร้อมก่อน (เหมือนเดิม มีตัวเลข 5 ชุด)
ลากครอบข้อมูล แล้วสร้างกราฟ
แต่ให้เลือกกราฟจาก Template แล้วเลือกกราฟที่เราเซฟไว้

เท่านี้ กราฟที่เราเพียรพยายามสร้างขึ้นมา ก็จะไม่สูญเปล่า
เราจะเรียกใช้เมื่อไรก็ย่อมได้ครับ ^__^
.
จากงบกำไร-ขาดทุน ธรรมด๊า ธรรมดา เราก็เปลี่ยนเป็นกราฟที่สื่อความหมายแบบนี้

สำหรับผู้สนใจ สามารถดาวน์โหลดไฟล์ตัวอย่างได้ครับ
WaterfallChart_IncomeStatement_160701
.
อย่างไรก็ตาม ความชอบของคนเราไม่เหมือนกัน
บางคนอาจถนัดการดูข้อมูลในลักษณะของตารางก็เป็นได้
เราควรสอบถามผู้ฟัง หรือคนอ่านรีพอร์ตของเราก่อน ว่าเค้าโอเคกับกราฟแบบนี้ไหม?
ถ้าเค้าโอเค
ก็ลุยเลย!
แต่ถ้าไม่โอเค…
อย่างน้อย เราก็ได้ฝึกสมองครับ ^__^
.
หากคุณชอบบทความแนวนี้ สามารถอัพเดตบทความใหม่ๆโดยคลิก Like เฟสบุ๊คแฟนเพจ วิศวกรรีพอร์ต หรือคลิก ที่นี่
อย่าลืมแชร์ให้เพื่อนอ่านเพื่อเป็นกำลังใจให้คนเขียนด้วยนะครับ ^_^
One thought on “พอกันที งบกำไร-ขาดทุน แบบเดิมๆ!”