9 ข้อผิดพลาดที่พบบ่อยใน Power BI โดย อ.ชไลเวท พิพัฒพรรณวงศ์

รวม 9 ข้อผิดพลาดยอดฮิตที่ผู้ใช้ Power BI มักทำพลาด พร้อมวิธีแก้ไขจากประสบการณ์จริงของ Microsoft MVP เพื่อให้คุณสร้าง Dashboard ที่มีประสิทธิภาพ รวดเร็ว และตอบโจทย์ธุรกิจได้อย่างแท้จริง
9 ข้อผิดพลาดที่พบบ่อยใน Power BI โดย อ.ชไลเวท พิพัฒพรรณวงศ์
ทักษะ (ระบุได้หลายทักษะ)

Power BI เป็นเครื่องมือ Business Intelligence ที่ได้รับความนิยมสูงสุดในปัจจุบัน แต่การใช้งานให้เต็มประสิทธิภาพนั้นไม่ใช่เรื่องง่าย หลายคนที่เริ่มต้นใช้งาน Power BI มักจะพบกับข้อผิดพลาดซ้ำๆ ที่ส่งผลให้ Report ทำงานช้า ดูแลรักษายาก และไม่ตอบโจทย์ผู้ใช้งาน
บทความนี้สรุปจากประสบการณ์จริงของ อ.ชไลเวท พิพัฒพรรณวงศ์ (อ.เวท) ผู้เชี่ยวชาญด้าน Power BI ระดับ Microsoft MVP สาขา Data & AI และ CEO ของ 9Expert Co., Ltd. ซึ่งได้แบ่งปัน 9 ข้อผิดพลาดที่ตนเองเคยทำ เพื่อให้ผู้อ่านได้เรียนรู้และหลีกเลี่ยงปัญหาเหล่านี้ตั้งแต่เริ่มต้น
เนื้อหาแบ่งออกเป็น 4 หมวดหลัก ได้แก่ Data Modeling Foundations, Design Principles, Smart Automation และ Security Practices ซึ่งครอบคลุมทุกขั้นตอนตั้งแต่การออกแบบ Data Model ไปจนถึงการออกแบบ Dashboard ให้ใช้งานได้จริง
 

ตารางยักษ์ที่ทำให้ไฟล์บวม

1. The Giant Table — ตารางยักษ์ที่ทำให้ไฟล์บวม

"ไฟล์ Power BI แรกของผมมีขนาด 800MB... สำหรับรายงานที่มีแค่ 1,000 แถว"

ข้อผิดพลาดอันดับหนึ่งที่มือใหม่มักทำคือการนำข้อมูลทั้งหมดมารวมไว้ในตารางเดียวขนาดใหญ่ (Flat Table) ที่มีมากกว่า 150 คอลัมน์ ส่งผลให้ไฟล์มีขนาดใหญ่เกินความจำเป็น สูตร DAX ซับซ้อน และเกิดความไม่สอดคล้องกันของข้อมูลระหว่างแถวต่างๆ

วิธีแก้ไข: ใช้ Star Schema

แยกข้อมูลออกเป็น Fact Table (ข้อมูลที่นับได้ เช่น ยอดขาย จำนวน) และ Dimension Table (ข้อมูลที่ใช้กรอง เช่น ลูกค้า สินค้า วันที่) การเปลี่ยนมาใช้ Star Schema สามารถลดขนาดไฟล์จาก 800MB เหลือเพียง 85MB (ลดลง 89%) พร้อมทั้งทำให้สูตร DAX เรียบง่ายขึ้นและ Filter ทำงานได้อย่างเป็นธรรมชาติ

Key Insight: หลักง่ายๆ: ถ้านับได้ → Fact Table / ถ้าใช้กรอง → Dimension Table
 
การตั้งชื่อมีความสำคัญ

2. Naming Matters — การตั้งชื่อมีความสำคัญ

"Column1 ไม่เคยบอกใครได้เลยว่ามันคืออะไร"

หลายคนปล่อยให้ชื่อคอลัมน์เป็นชื่อเดิมจากแหล่งข้อมูล เช่น Column1, Table_2, Query1, Field_ABC ซึ่งทำให้คนอื่นที่มารับงานต่อต้องใช้เวลา 2-3 วัน ในการทำความเข้าใจ Model

วิธีแก้ไข: Rename, Hide, Organize

เปลี่ยนชื่อให้สื่อความหมาย เช่น Customer Name, Sales Amount, Order Date จัดกลุ่มด้วย Display Folder และซ่อนฟิลด์ที่ไม่จำเป็น ผลลัพธ์คือจาก 150 ฟิลด์ที่สับสน เหลือเพียง 40 ฟิลด์ที่เข้าใจง่าย และเวลา Onboarding ลดจาก 2-3 วัน เหลือแค่ 30 นาที

Key Insight: กฎ 5 วินาที: ถ้าคนแปลกหน้าดูแล้วไม่เข้าใจใน 5 วินาที ให้เปลี่ยนชื่อทันที

ไม่ใช้ Power Query ทำให้เสียเวลาซ้ำซาก

3. งานอัตโนมือ — ไม่ใช้ Power Query ทำให้เสียเวลาซ้ำซาก

"ทุกเช้าวันจันทร์ ผมใช้เวลา 2 ชั่วโมง Copy-Paste... ติดต่อกัน 6 เดือน"

การเตรียมข้อมูลด้วยมือซ้ำๆ ทุกสัปดาห์ไม่เพียงเสียเวลา แต่ยังเสี่ยงต่อความผิดพลาด ตัวอย่างจริง: ในสัปดาห์ที่ 27 ลืมขั้นตอนหนึ่ง ทำให้ CEO เห็นยอดขายเพิ่มขึ้น 300% ซึ่งเป็นตัวเลขที่ผิดพลาด

วิธีแก้ไข: ใช้ Power Query

ตั้งค่าขั้นตอนการ Transform ข้อมูลใน Power Query ครั้งเดียว จากนั้นแค่กด Refresh ก็เสร็จภายใน 30 วินาที แทนที่จะทำมือ 10 ขั้นตอนทุกสัปดาห์ ประหยัดเวลาได้ 104 ชั่วโมงต่อปี

Key Insight: Transform Once, Refresh Forever — ตั้งค่าครั้งเดียว Refresh ได้ตลอดไป

ค่าคงที่ที่ฝังในโค้ด

4. Hardcoded Values — ค่าคงที่ที่ฝังในโค้ด

"ผมใช้เวลาหนึ่งสัปดาห์เปลี่ยน '2023' เป็น '2024' ในสูตร DAX กว่า 50 ตัว"

การพิมพ์ค่าตายตัว เช่น ปี พ.ศ. หรือชื่อสาขา ลงในสูตร DAX หรือ Power Query โดยตรง ทำให้ทุกครั้งที่ต้องเปลี่ยนค่า ต้องไล่แก้ทีละ Measure และถ้าพลาดแก้แม้แต่ตัวเดียว ข้อมูลก็จะผิดเงียบๆ โดยไม่มีใครรู้ อาจเป็นเวลาหลายสัปดาห์

วิธีแก้ไข: ใช้ Parameters และ Disconnected Tables

ใช้ What-If Parameters, Power Query Parameters หรือ Disconnected Tables เพื่อกำหนดค่าที่อาจเปลี่ยนแปลง เมื่อต้องการเปลี่ยนค่า แค่ปรับที่ Parameter Slicer จุดเดียว ค่าทั้งหมดก็จะอัปเดตพร้อมกันทุก Measure

Key Insight: ถ้าค่าไหนอาจเปลี่ยนแปลงในวันพรุ่งนี้ อย่าพิมพ์มันลงในโค้ดวันนี้

เลือกใช้ผิดเครื่องมือ

5. DAX vs Power Query — เลือกใช้ผิดเครื่องมือ

"ผมภูมิใจกับสูตร DAX 30 บรรทัดมาก... จนกระทั่งมีคนมาบอกว่ามันทำได้ด้วยคลิกเดียวใน Power Query"

หลายคนพยายามทำทุกอย่างด้วย DAX รวมถึงงานที่ควรทำใน Power Query เช่น การจัดกลุ่มข้อมูล การกรองแถว หรือการเพิ่มคอลัมน์คำนวณ ซึ่งทำให้สูตร DAX ยาวและซับซ้อนเกินจำเป็น คำนวณซ้ำทุกครั้งที่คลิก และใช้เวลา 20 นาทีกว่าจะเข้าใจ

วิธีแก้ไข: Decision Framework

ถามตัวเองว่า: ค่านี้เปลี่ยนตาม Filter ของผู้ใช้หรือไม่?

  • ไม่เปลี่ยน → ทำใน Power Query (คำนวณครั้งเดียวตอน Refresh)
  • เปลี่ยนตาม Filter → ใช้ DAX Measure (คำนวณแบบ Dynamic)

จากประสบการณ์จริง 6 ใน 10 งาน ควรทำใน Power Query ไม่ใช่ DAX การ Transform ข้อมูลล่วงหน้าจะทำให้ Power BI ทำงานเร็วขึ้นอย่างเห็นได้ชัด

Key Insight: Transform Early, Calculate Late — จัดการข้อมูลให้เรียบร้อยก่อน แล้วค่อยคำนวณทีหลัง

Measure ซ้ำซ้อนจนท่วม

6. Calculation Groups — Measure ซ้ำซ้อนจนท่วม

"ผมมี 247 Measures ใน Model เดียว สองร้อย สี่สิบ เจ็ด"

เมื่อต้องสร้าง Measure สำหรับ YTD, MTD, LY ของทุก KPI หลายคนเลือกวิธี Copy-Paste แล้วเปลี่ยนชื่อ ทำให้เกิด Measure จำนวนมหาศาล เช่น 25 KPI พื้นฐาน คูณด้วย 10 รูปแบบเวลา กลายเป็น 247 Measures ที่ดูแลรักษายากมาก หากต้องแก้ Logic ของ YTD ก็ต้องแก้ทั้ง 25 ตัว และอาจพลาดอีก 2-3 ตัว

วิธีแก้ไข: ใช้ Calculation Groups

Calculation Groups ช่วยให้สร้าง Time Pattern (YTD, MTD, LY ฯลฯ) เพียงครั้งเดียว แล้วนำไปใช้กับทุก Measure ได้โดยอัตโนมัติ ผลลัพธ์คือลดจาก 247 Measures เหลือเพียง 25 Measures (ลดลง 90%) โดยใช้ 2 Slicers (KPI Selector + Time Pattern) แทน Measure กว่า 200 ตัว หากต้องแก้ Logic ก็แก้แค่จุดเดียว ไม่ต้องไล่แก้ทีละตัวอีกต่อไป

Key Insight: ถ้าคุณ Copy-Paste Measure แล้วเปลี่ยนแค่ชื่อ → คุณต้องการ Calculation Group

ทำสำเนาหน้าซ้ำจนท่วม

7. Page Duplication — ทำสำเนาหน้าซ้ำจนเกินความจำเป็น

"47 หน้า ผมดูแล 47 หน้าที่เหมือนกันเกือบทั้งหมด"

เมื่อต้องการแสดงข้อมูลแยกตามภูมิภาคหรือสินค้า หลายคนเลือก Copy หน้าแล้วเปลี่ยน Filter ทำให้เกิด 47 หน้าสำหรับแต่ละภูมิภาค มี Visual ทั้งหมด 282 ชิ้นที่โหลดพร้อมกัน ไฟล์ขนาด 85MB และเมื่อต้องแก้ KPI หนึ่งตัว ก็ต้องไล่แก้ทั้ง 40+ หน้า

วิธีแก้ไข: Smart Navigation

  • Bookmarks — สลับมุมมองในหน้าเดียวกัน
  • Drillthrough — กรองข้อมูลรายละเอียดอัตโนมัติ
  • Page Navigation — สร้างเมนูแบบ App

ผลลัพธ์: จาก 47 หน้า เหลือเพียง 7 หน้าหลัก (ลดลง 85%) ขนาดไฟล์ลดจาก 85MB เหลือ 12MB และแก้ KPI ได้ภายใน 10 วินาที
Key Insight: Copy-Paste ไม่ใช่กลยุทธ์ — มันคือหนี้ทางเทคนิคที่มีดอกเบี้ยทบต้น

Visual ล้นจอจนใช้งานจริงไม่ได้

8. Visual Overload — Visual ล้นจอจนใช้งานจริงไม่ได้

"ลูกค้าบอกว่า: หน้าจอนี้ดูเหมือน Cockpit เครื่องบิน... แต่ผมไม่ใช่นักบิน"

การยัด Visual 20 ชิ้นพร้อม Slicer อีก 5 ตัวในหน้าเดียว ทำให้เกิด Cognitive Overload ผู้ใช้ไม่รู้ว่าควรดูตรงไหนก่อน เวลาโหลดนาน 8-15 วินาที (เพราะแต่ละ Visual = 1 DAX Query) และไม่มี Storytelling เมื่อทุกอย่างดังเท่ากันหมด ก็ไม่มีอะไรโดดเด่น

วิธีแก้ไข: 1 Page = 1 Question

  • จำกัด Visual ไม่เกิน 5-7 ชิ้นต่อหน้า
  • ใช้ Z-Pattern Layout เพื่อการอ่านที่เป็นธรรมชาติ
  • ใช้ Drillthrough, Bookmarks และ Tooltip Pages สำหรับรายละเอียดเพิ่มเติม

ผลลัพธ์: เวลาโหลดลดจาก 8-15 วินาที เหลือ 1-2 วินาที (เร็วขึ้น 7 เท่า) DAX Queries ลดลง 70% และ User Engagement เปลี่ยนจากเปิดแล้วปิดทิ้งเป็นใช้งานทุกวัน

Key Insight: Copy-Paste ไม่ใช่กลยุทธ์ — มันคือหนี้ทางเทคนิคที่มีดอกเบี้ยทบต้น

ออกแบบโดยไม่คิดถึงการตัดสินใจ

9. Decision-First Design — ออกแบบโดยไม่คิดถึงการตัดสินใจ

"ผมสร้าง Dashboard สวยมาก... แต่ไม่มีใครเปิดดูหลังจากวันแรก"

สถิติที่น่าตกใจคือ 36% ของรายงานไม่มีคนเปิดดูเลยหลังจาก 90 วัน สาเหตุหลักคือการออกแบบ Dashboard โดยถามว่า "อยากเห็นอะไร" แทนที่จะถามว่า "ต้องตัดสินใจอะไร" ทำให้ได้ Dashboard ที่ดูสวยแต่ไม่ตอบโจทย์การทำงานจริง

วิธีแก้ไข: 5 Golden Questions

ก่อนเริ่มสร้าง Dashboard ให้ถามผู้ใช้ด้วยคำถาม 5 ข้อนี้:

  1. รายงานนี้จะช่วยคุณตัดสินใจเรื่องอะไร?
  2. ถ้าเห็นตัวเลขแล้ว คุณจะทำอะไรต่อ?
  3. ใครดู เมื่อไหร่ และบนอุปกรณ์อะไร?
  4. ตัวเลขไหนที่ถ้าผิดจะสร้างปัญหาใหญ่ที่สุด?
  5. ถ้าไม่มีรายงานนี้ คุณตัดสินใจอย่างไรในวันนี้?
Key Insight: ถาม "ต้องตัดสินใจอะไร?" ไม่ใช่ "อยากเห็นอะไร?"

สรุป: จาก Confession สู่ Mastery

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

ข้อหลักการแนวทางปฎิบัติ
1Start Schemaแยก Fact และ Dimension ให้ชัดเจน
2Rename + Hide + Foldersตั้งชื่อให้เข้าใจได้ใน 5 วินาที
3Power Query Automationตั้งค่าครั้งเดียว Refresh ตลอดไป
4Use Parametersอย่า Hardcode ค่าที่อาจเปลี่ยน
5DAX vs Power QueryTransform ก่อน Calculate ทีหลัง
6Calculation Groupsลด Measure ซ้ำซ้อนลง 90%
7Bookmarks + Drillthroughลดการ Copy-Paste หน้า
81 Page = 1 Questionจำกัด Visual 5-7 ชิ้นต่อหน้า
95 Golden Questionsถามเรื่องการตัดสินใจ ไม่ใช่แค่ข้อมูล
 

"Dashboard ที่ดีไม่ใช่แค่สวย แต่จะต้องตอบโจทย์ มีโครงสร้างที่ดี เรียบง่าย แต่ทรงพลัง"

อ.ชไลเวท พิพัฒพรรณวงศ์, 9Expert Training

หากต้องการเรียนรู้เพิ่มเติมเกี่ยวกับ Power BI อย่างเจาะลึก สามารถติดตามหลักสูตรอบรมจาก 9Expert Training ได้ที่ www.9experttraining.com ซึ่งมีหลักสูตรครอบคลุมตั้งแต่ระดับพื้นฐานจนถึงระดับสูง สอนโดยผู้เชี่ยวชาญระดับ Microsoft MVP