---
title: "Power BI ตอนที่ 07: เริ่ม Get Data ตั้งแต่ไฟล์ยังว่างเปล่า"
url: https://www.thepexcel.com/power-bi-get-data/
type: post
date: 2020-02-07
updated: 2020-05-24
author: Sira Ekabut
categories: [Power Query, Power BI]
---

# Power BI ตอนที่ 07: เริ่ม Get Data ตั้งแต่ไฟล์ยังว่างเปล่า

เอาล่ะ ในที่สุดก็ถึงเวลาที่จะเรียนรู้การดึง Data เข้า Power BI ด้วยเครื่องมือ Get Data/Transform Data หรือก็คือ Power Query นั่นเอง (ใครได้อ่านหนังสือ [Excel Power Up!](https://www.thepexcel.com/product/excel-power-up-book/) มาก็น่าจะเข้าใจได้เร็วกว่านะครับ เพราะมันคือตัวเดียวกันเลย)

 

ซึ่งในบทความนี้ผมมีไฟล์ Data ให้โหลดเป็นไฟล์ zip 1 อัน   
([โหลดจาก Google Drive](https://drive.google.com/open?id=1D48qpQFv8JJ1ft9uJ4nNvo32lq3PwZ9S) / [โหลดจาก GitHub](https://github.com/siraekabut/siraekabut.github.io/blob/master/contoso.zip))

 

ซึ่งถ้าแตกออกมาจะมี Folder อยู่ 1 อันชื่อว่า Contoso

 
- **ในนั้นจะมีไฟล์ Excel 1 ไฟ**ล์ที่มีหลาย sheet โดยแต่ละ Sheet คือตาราง Reference ทั้งหมดที่ต้องใช้
- **และมีไฟล์ CSV อยู่ 3 ไฟล์** เป็นข้อมูล Transaction 3 ปี (ไฟล์ละปี)

 ![1](https://www.thepexcel.com/wp-content/uploads/2020/02/get-data-01-1024x196.png) 

ไอเดียหลักคือเดี๋ยวเราจะเอา Data ทั้งหมดเข้า Power Query โดยตาราง Reference ใน Excel จะเอาเข้าแยกเป็นคนละ Query กันทั้งหมด

 

ส่วนไฟล์ CSV เราจะเอาเข้าโดย Get Data from Folder เพราะเผื่อในอนาคตมีไฟล์ CSV เพิ่มอีกจะได้กด Refresh เพื่อดูดจาก Folder ได้เลย

 

## เริ่มดึงตาราง Reference จากไฟล์ Excel

 

ให้เปิด Power BI เเปล่าๆ แล้ว Get Data จาก Excel ชื่อ RefTable.xlsx ได้เลย

 

จากนั้นติ๊กเลือกทุก Sheet แล้วกด Transform ได้เลย (การเลือกติ๊กถูกข้างหน้าหลายอันพร้อมกัน แปลว่า เอาแต่ละอันแยกกันเป็นคนละ Query [รายละเอียดลองอ่านได้ที่นี่](https://www.thepexcel.com/get-data-from-excel/))

 ![2](https://www.thepexcel.com/wp-content/uploads/2020/02/get-data-02fix-1024x785.png) 

แล้วมันก็จะเปิด Query Editor ขึ้นมา เราก็จะเห็นว่ามี Query จากทุกๆ ตารางเรียบร้อยแล้ว (แยกตารางละ 1 Query) และเราจะพบว่ามันจัดการเรื่อง Header ให้เราเสร็จแล้ว ไม่มีปัญหาอะไร

 

ทั้งนี้เพราะว่าในแต่ละ Sheet มีตารางอยู่อันเดียว และตารางบรรทัดบนสุดเป็นหัวตารางเรียบร้อย จึงไม่จำเป็นต้องทำเป็น Table ก็สามารถดึงมาใช้ได้โดยไม่ยากลำบากนัก

 

ใครทำกับข้อมูลจริงของตัวเองแล้วยากลำบาก ต้องลองอ่าน[บทความการดึงข้อมูลจาก Excel อันนี้](https://www.thepexcel.com/get-data-from-excel/)ดู จะได้เข้าใจว่าการดึงข้อมูลจาก Excel ทำงานยังไง

 ![3](https://www.thepexcel.com/wp-content/uploads/2020/02/get-data-03-1024x350.png) 

## เริ่มดึงตาราง Transaction หลัก

 

ต่อไปเราจะเริ่มดึงข้อมูลจากตาราง Transaction หลัก (จากไฟล์ CSV ทั้งหมดใน Folder Contoso) โดยขณะอยู่ใน Query Editor ก็กดที่ New Source -> More -> Folder ได้เลย

 

จากนั้นให้ Browse เลือก Folder Contoso ที่ผมเตรียมไว้ให้ แล้วกด Transform Data จะได้แบบนี้ ซึ่ง**มันได้ List ไฟล์ทุกอันที่อยู่ Folder นั้น (และ Sub Folder ถ้ามี) มาให้แล้ว**

 ![4](https://www.thepexcel.com/wp-content/uploads/2020/02/get-data-04-1024x358.png) 

**สิ่งที่เราต้องการเอามารวม มีแค่ไฟล์ CSV เท่านั้น** ดังนั้นเราต้องทำการ Filter เลือก Extension แค่ .csv เท่านั้น (สังเกตที่สูตรด้วยว่า มันเอานามสกุล .csv ถ้าใครไม่เห็นสูตร ให้ไปที่ View-> Formula Bar นะ)

 ![5](https://www.thepexcel.com/wp-content/uploads/2020/02/get-data-05.png) 

หลังจาก Filter แล้วให้**กดปุ่ม Combine ที่มุมคอลัมน์ Content **ดังรูป เพื่อสั่งให้มันรวมทุกไฟล์เข้าด้วยกัน

 

ถ้าดู Preview แล้วไม่มีปัญหาอะไรก็กด ok ได้เลย และนี่คือหน้าตาผลลัพธ์ที่ออกมา (ถ้าของจริงที่มีข้อความภาษาไทยด้วย ต้องระวังเรื่อง encoding ดีๆนะ)

 

**Tips** : การรวมทุกไฟล์ใน Folder เข้าด้วยกัน มันจะทำตาม Step ที่ระบุใน ***Transform Sample File*** ด้านซ้ายมือ หากเราไปแก้ Step ในนั้น ผลลัพธ์สุดท้ายก็จะเปลี่ยนไปด้วย

 ![6](https://www.thepexcel.com/wp-content/uploads/2020/02/get-data-06-1024x327.png) 

**ตรงคอลัมน์ DateKey จะเห็นว่ามันยังเป็น text อยู่** ไม่ใช่วันที่ เดี๋ยวเราจะทำการเปลี่ยนให้เป็นวันที่ซะ โดยกด Using Locale… เพื่อระบุรูปแบบวันที่ของไฟล์ input แบบเป๊ะๆ จะได้ไม่พลาด (ถ้าเดิมไม่ใช่ Text จะกด Using locale ไม่ได้ผลนะ ถ้าของเดิมถูกเปลี่ยนเป็นวันที่ไปแล้วแต่ผิดรูปแบบ ให้ปรับกลับเป็น Text โดย Replace Current Step ก่อน)

 ![7](https://www.thepexcel.com/wp-content/uploads/2020/02/get-data-07.png) 

ถ้าลองสำรวจดูจะพบว่าไฟล์ csv นี้บันทึกวันที่เป็น text มาในรูปแบบ **dd/mm/yyyy ค.ศ. **ดังนั้นต้อง**เลือกเป็น Date แบบ English (United Kingdom) ประเทศอังกฤษ**นะ ไม่ใช่อเมริกา

 ![8](https://www.thepexcel.com/wp-content/uploads/2020/02/get-data-08.png) 

จากนั้นผลลัพธ์จะแปลงเป็นวันที่ได้ถูกต้อง (แต่จะเห็น Format ของวันที่ใน Query Editor ตามที่ตั้งใน Control Panel ซึ่งแต่ละคนอาจไม่เหมือนกัน ของผมตั้งเป็น Thai เลยออกมาเป็น พ.ศ.)

 ![9](https://www.thepexcel.com/wp-content/uploads/2020/02/get-data-09-1024x484.png) 

ทีนี้เราไม่ต้องการคอลัมน์ Source.Name แล้วก็ลบทิ้งไปซะ

 

และเปลี่ยนชื่อ Query เป็น fSales ด้วย (**ชื่อ Query จะกลายเป็นชื่อ Table ใน Data Model นะ**)

 ![10](https://www.thepexcel.com/wp-content/uploads/2020/02/get-data-10-1024x394.png) 

## เอาข้อมูลเข้า Data Model

 

ตอนนี้เราได้ข้อมูลครบทุก Table ที่จำเป้นแล้ว ก็สามารถกด Close & Apply เพื่อเอาตารางทั้งหมดเข้าสู่ Data Model ซะที

 ![11](https://www.thepexcel.com/wp-content/uploads/2020/02/get-data-11.png) 

คราวนี้ให้ลองกดไปที่หน้า Model เราก็จะเห็นว่า Power BI มันสร้างความสัมพันธ์ให้เราเองเลย (ทั้งนี้เพราะว่าชื่อ Field ที่เป็น Key เชื่อมตารางแต่ละคู่นั้นใช้ชื่อ Field เดียวกัน)

 

ใครที่ตารางดูเละเทะ ดูไม่รู้เรื่อง ให้ลองกดปุ่ม Reset Layout ด้านขวาล่างดูครับ

 ![12](https://www.thepexcel.com/wp-content/uploads/2020/02/get-data-12-1024x529.png) 

เอาล่ะ ตารางพวกนี้ก็เข้าไปใน Data Model ครบหมดแล้ว ในตอนนี้ก็ขอจบเพียงเท่านี้ก่อนนะครับ

 

## เตรียมตัวจัดหน้าตา Data Model ในตอนหน้า

 

ในตอนหน้า เราจะมาทำความเข้าใจเพิ่มเติมว่า Data Model ที่ดีที่สุดใน Power BI จะต้องเป็นรูปแบบใด และเราจะใช้ Power Query ช่วยจัดหน้าตาของตาราง ให้มาอยู่ในรูปแบบของ Data Model ที่ต้องการได้ยังไง?

 

สำหรับตอนนี้ใครทำแล้วติดตรงไหนก็ถามได้เลยนะครับ

 

## สารบัญ Series Power BI

 
- [POWER BI ตอนที่ 01: POWER BI คืออะไร?](https://www.thepexcel.com/what-is-power-bi/)
- [POWER BI ตอนที่ 02: พื้นฐาน EXCEL ที่สำคัญก่อนจะเรียนรู้ POWER BI](https://www.thepexcel.com/basic-excel-for-power-bi/)
- [POWER BI ตอนที่ 03: ภาพรวมการใช้งาน POWER BI DESKTOP](https://www.thepexcel.com/power-bi-overview/)
- [POWER BI ตอนที่ 04: สร้าง REPORT แรก ใน POWER BI](https://www.thepexcel.com/build-first-power-bi-report/)
- [POWER BI ตอนที่ 05: วิธีการ DRILL เพื่อเจาะลึกข้อมูลใน REPORT](https://www.thepexcel.com/power-bi-drill/)
- [POWER BI ตอนที่ 06: การปรับแต่งสีใน VISUAL ด้วย CONDITIONAL FORMAT](https://www.thepexcel.com/power-bi-conditional-format/)
- [POWER BI ตอนที่ 07: เริ่ม GET DATA ตั้งแต่ไฟล์ยังว่างเปล่า](https://www.thepexcel.com/power-bi-get-data/)
- [POWER BI ตอนที่ 08: สร้าง DATA MODEL ที่เหมาะสม](https://www.thepexcel.com/power-bi-data-model-basic/)
- [POWER BI ตอนที่ 09: สร้าง DATE TABLE ด้วย DAX](https://www.thepexcel.com/power-bi-dax-date-table/)
- [POWER BI ตอนที่ 10: เรียนรู้ DAX เบื้องต้น](https://www.thepexcel.com/power-bi-basic-dax/)
- [POWER BI ตอนที่ 11: เรียนรู้ DAX Table Function – FILTER](https://www.thepexcel.com/dax-table-function-filter/)
- [POWER BI ตอนที่ 12: DISTINCT, VALUES, ALL และผองเพื่อน](https://www.thepexcel.com/distinct-values-all/)
- [POWER BI ตอนที่ 13: CALCULATE ฟังก์ชันที่ทรงพลังที่สุดใน DAX](https://www.thepexcel.com/dax-calculate/)
- [Power BI ตอนที่ 14: Context Transition และ พลังแฝงใน Measure](https://www.thepexcel.com/context-transition-calculate-measure/)
- [Power BI ตอนที่ 15: วิธีดึงค่าจาก Slicer มาคำนวณใน Report](https://www.thepexcel.com/dax-get-data-from-slicer/)
- [Power BI ตอนที่ 16 : เดินทางข้ามเวลาไปกับ Time Intelligence DAX Function](https://www.thepexcel.com/time-intelligence-dax-function/)
- [Power BI ตอนที่ 17 : วิธีทำรายงานเทียบเป้าหมาย Target vs Actual](https://www.thepexcel.com/data-model-target-vs-actual/)
- [Power BI ตอนที่ 18 : วิธีการกระจายเป้า Allocate Target ด้วย DAX](https://www.thepexcel.com/allocate-target-dax/)
- [Power BI ตอนที่ 19 : การปรับ Cross Filter Direction เพื่อคำนวณค่าในตาราง Dimension](https://www.thepexcel.com/cross-filter-direction/)
- **ส่วนเสริม**
- [การคำนวณต้นทุนแบบ FIFO ด้วย DAX](https://www.thepexcel.com/dax-fifo-cost/)
- [แสดงข้อมูลสรุปแบบ Top N + Others (ฉบับเทพเอ็กเซล)](https://www.thepexcel.com/dax-top-n-others/)
- [การวิเคราะห์ Event ที่มีช่วงเวลาเริ่มต้นกับสิ้นสุดคนละวัน](https://www.thepexcel.com/event-duration-dax-model/)
- [เปรียบเทียบ MAX vs LASTDATE ในภาษา DAX](https://www.thepexcel.com/max-lastdate-dax/)

 

**ใครสนใจอยากเรียนเป็นคลิปวีดีโอ** ผมมี

---

_Source: [https://www.thepexcel.com/power-bi-get-data/](https://www.thepexcel.com/power-bi-get-data/)_
