กลับไปหน้า Power Query
ทริคPower Query

Combine Files จาก Folder

รวมไฟล์ Excel/CSV หลายไฟล์ในโฟลเดอร์เดียวให้เป็นตารางเดียวอัตโนมัติ

เริ่มอ่านตรงนี้ก่อน

อธิบายแบบง่าย

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

ระดับ

เหมาะกับคนที่เริ่มลงมือทำแล้ว

ใช้เมื่อไหร่

มีไฟล์รูปแบบเดียวกันแยกตามเดือน/สาขา หย่อนรวมในโฟลเดอร์เดียว

อ่านแล้วทำอะไรต่อ

ชี้ไปโฟลเดอร์ Sales กรองเฉพาะ .xlsx แล้ว Combine ได้ตารางเดียว เดือนถัดไปแค่หย่อนไฟล์ใหม่แล้วรีเฟรช

ใช้ตอนไหน?

  • มีไฟล์รูปแบบเดียวกันแยกตามเดือน/สาขา หย่อนรวมในโฟลเดอร์เดียว
  • ต้องรวมไฟล์ CSV ที่ export ออกมาเป็นชุดให้เป็นตารางเดียว
  • อยากให้รายงานอัปเดตเองเมื่อมีไฟล์ใหม่เข้าโฟลเดอร์โดยไม่แก้สูตร

ความหมาย

Combine Files from Folder คือการชี้ Power Query ไปที่โฟลเดอร์หนึ่ง แล้วให้รวมไฟล์ที่หน้าตาเหมือนกัน (เช่น ไฟล์ยอดขายรายเดือน) ทั้งหมดเป็นตารางเดียว เมื่อมีไฟล์ใหม่หย่อนเข้าโฟลเดอร์ แค่กดรีเฟรชก็ดึงเข้ามาเอง โดยไม่ต้องก๊อปวางทีละไฟล์

ชี้โฟลเดอร์แล้ว Combine

Get Data > From Folder เลือกโฟลเดอร์ กรองเฉพาะไฟล์ที่ต้องการ (เช่นนามสกุล .xlsx) แล้วกด Combine & Transform Power Query จะสร้างฟังก์ชันตัวอย่าง (sample function) มาใช้แปลงทุกไฟล์เหมือนกัน

Get Data > From Folder > Combine & Transform
// M โครงหลัก:
let
  Source = Folder.Files("C:\Data\Sales"),
  Filtered = Table.SelectRows(Source, each [Extension] = ".xlsx"),
  Combined = Table.Combine(Table.AddColumn(Filtered, "Data",
    each Excel.Workbook([Content]))[Data])
in Combined

ตัวอย่างการใช้

รวมไฟล์ยอดขายรายเดือน

ชี้ไปโฟลเดอร์ Sales กรองเฉพาะ .xlsx แล้ว Combine ได้ตารางเดียว เดือนถัดไปแค่หย่อนไฟล์ใหม่แล้วรีเฟรช

Source = Folder.Files("C:\Data\Sales")