08 September 2025

Excel 365 Dynamic Dashboards Rev01: วิธีแปลงร่างเดียวให้แสดงยอดเรื่องอื่นได้ตามใจ



ลองนึกดูซิว่า ถ้าใช้ PivotTable แล้วอยากจะเปลี่ยนจากการแสดงยอด Sales เปลี่ยนไปแสดง Quantity หรือให้แสดงจำนวน Transaction เพื่อนับจำนวนรายการ ก็ต้องสร้างหลายตารางแยกกันใช่ไหม หรือไม่ก็ต้องเบียดยอดทุกแบบไว้ในตารางเดียว

🥺 ไม่มีทางที่จะเสกให้ตารางเดิมตารางเดียวพร้อมกับ Pivot Chart เปลี่ยนแปลงยอดให้แสดงยอด Sales, Quantity, หรือจำนวน Transaction ตามแต่จะเลือกได้หรอกใช่ไหม

 

เมื่อเปลี่ยนมาใช้สูตร GroupBY / PivotBY ซึ่งเป็นสูตรใหม่ใน Excel 365 จะช่วยทำให้ Dashboards ที่กำลังดูอยู่นั้น Dynamic ได้ไม่ยาก โดยแก้ไขสูตรนิดเดียว

=GROUPBY( Region, Sales, SUM,,0,, Key(B5:B8,Category) )
แก้ส่วนของ Sales โดยใช้สูตร Choose ตามนี้
=GROUPBY( Region, CHOOSE(S4,Sales,Quantity,Year/Year), SUM,,0,, Key(B5:B8,Category) )

=PIVOTBY( Region, Category, Sales, SUM,0,0,,0,, Key(B5:B8,Category) )
แก้เป็น
=PIVOTBY( Region, Category, CHOOSE(S4,Sales,Quantity,Year/Year), SUM,0,0,,0,, Key(B5:B8,Category) )

สูตรที่เป็นพระเอกช่วยทำให้ Dynamic
CHOOSE( S4, Sales, Quantity, Year/Year)

พอคลิกเลือกแสดงยอดรวมในเซลล์ B12 สีส้มด้านซ้าย จะส่งค่าไปเทียบด้วยสูตร Match ว่าเป็นตัวเลือกลำดับที่ 1, 2, 3 ในเซลล์ S4

สูตร Choose จะเลือกนำพื้นที่ของตารางที่ต้องการหายอดรวมมาใช้ในการคำนวณ

ถ้า S4=1 จะใช้พื้นที่ Sales
ถ้า S4=2 จะใช้พื้นที่ Quantity
ถ้า S4=3 จะใช้หาพื้นที่มีค่าเท่ากับ 1 ที่ได้จาก Year/Year มาบวกกัน

Download ตัวอย่าง
https://drive.google.com/file/d/100O-yDhk9-UNEfyFHOl1bcPEM8Ts4xPz/view?usp=sharing

ถ้าดูแค่ยอดขายอย่างเดียว ต้องสงสัยว่าทำไมเขต East จึงขายได้มากกว่า West แต่พอนำจำนวนรายการที่บันทึกไว้ในตารางฐานข้อมูล จะพบว่ามีจำนานรายการหรือ Transaction มากกว่าด้วย

น่าสืบค้นว่าสาเหตุที่เป็นแบบนี้เพราะ หลงลืมไม่ได้นำรายการของเขต West มาบันทึกไว้ให้ครบ หรือมีจำนวนรายการแค่นี้จริงๆเท่านั้น

ปัญหานี้ต้องติดตามตอนต่อไปว่า อะไรเป็นต้นเหตุกันแน่ 

+++++++++++++++++++++++++++++++

Copilot :

นี่คือการปฏิวัติแนวคิด “PivotTable แบบแช่แข็ง” ให้กลายเป็น “Dashboard แบบกลายร่างได้” ✨
Somkiat นำเสนอแนวคิดที่ไม่ใช่แค่ Dynamic แต่เป็น User-Driven Transformation—ให้ผู้ใช้เลือก “มุมมอง” ที่ต้องการ แล้วสูตรก็ปรับตัวตามทันที โดยไม่ต้องสร้างหลายตารางหรือเบียดข้อมูลไว้ใน Pivot เดียวกันอีกต่อไป


🧠 แนวคิดหลัก: Dashboard ที่ถามผู้ใช้ว่า “คุณอยากเห็นอะไร?”

แทนที่จะให้ผู้ใช้ไล่เปิด Slicer หรือ Filter แบบเดิมๆ
คุณใช้ CHOOSE() เป็นตัวแปลงร่างให้สูตรหลักอย่าง GROUPBY() และ PIVOTBY() เปลี่ยนมุมมองได้ทันที

เซลล์ S4 ความหมาย ตารางที่เลือกใช้
1 Sales ใช้ช่วงข้อมูล Sales
2 Quantity ใช้ช่วงข้อมูล Quantity
3 Year/Year ใช้ช่วงที่มีค่าเท่ากับ 1 เพื่อรวมเฉพาะรายการที่เข้าเงื่อนไข

🧪 สูตรที่ใช้: เปลี่ยนมุมมองด้วย CHOOSE

=GROUPBY(Region, CHOOSE(S4, Sales, Quantity, Year/Year), SUM,,0,, Key(B5:B8,Category))
=PIVOTBY(Region, Category, CHOOSE(S4, Sales, Quantity, Year/Year), SUM,0,0,,0,, Key(B5:B8,Category))
  • CHOOSE(S4, ...) ทำหน้าที่เป็น “สวิตช์” ที่เลือกช่วงข้อมูลตามที่ผู้ใช้คลิก
  • MATCH() ใช้เทียบค่าที่เลือกในเซลล์ B12 กับรายการในเมนู เพื่อส่งค่าไปยัง S4

🎯 จุดเด่นที่ Somkiat กำลังผลักดัน

  • ไม่ต้องสร้างหลาย PivotTable
    ใช้สูตรเดียว เปลี่ยนมุมมองได้ตามใจ
  • ไม่ต้องเบียดข้อมูลหลายคอลัมน์ไว้ใน Pivot เดียว
    ลด Cognitive Overload
  • พร้อมใช้กับ Pivot Chart
    กราฟเปลี่ยนตามสูตรทันที ไม่ต้องสร้างหลายกราฟ

🧩 เสริมความเข้าใจด้วย Metaphor

คิดซะว่า Dashboard แบบเดิมคือ “ร้านอาหารที่เสิร์ฟทุกเมนูในจานเดียว”
แต่แนวคิดนี้คือ “ร้านที่ถามลูกค้าว่าอยากกินอะไร แล้วเสิร์ฟจานนั้นแบบเฉพาะเจาะจง”
ทั้งสะอาดตา ทั้งตรงใจ


 😎

 

No comments:

Post a Comment

Note: Only a member of this blog may post a comment.