การดึง Google Sheet มาใช้งานใน Power Query

Power Query คือเครื่องมือที่ช่วยในด้าน วิเคราะห์ข้อมูล (Data Analysis) ปรับแต่งข้อมูล (Data Transformation) ที่มีใน Microsoft Excel, Microsoft Power BI, SQL Server ซึ่งสามารถทำการเชื่อมโยงไปยังแหล่งข้อมูลได้หลายแห่ง (Multi Data Source) เช่น Excel Workbook, CSV, XML, JSON, SharePoint, SQL, Access Database, Azure, Exchange และอีกมากมาย ซึ่งแน่นอนไม่มีการเชื่อมโยงไปยังคู่แข่งอย่าง Google และนี่คือเป้าหมายของบทความนี้

การสั่งให้ Power Query ดึงข้อมูลจาก Google Sheet จะทำไม่ได้โดยตรงจากเมนูเลือก Data Source เราจึงต้องทำการเชื่อมโยงไฟล์บนเครื่องของเราก่อน แล้วค่อยเปลี่ยนแหล่งข้อมูลภายหลัง

สิ่งที่ต้องเตรียม

  1. Google Sheet ที่มีข้อมูลบันทึกเรียบร้อย
  2. ทำการเปลี่ยน Permission เป็น ทุกคนที่มีลิงค์สามารถแก้ไขได้

Data Mock

Google Sheet หนูทดลองยาของเรา เพื่อน ๆ ใช้ลิงค์นี้ลองทำตามได้

https://docs.google.com/spreadsheets/d/1sdEOW0a1V4zyiXYUkbTUUr_bY2bhYWBY9_jP2B3hIqg/edit#gid=1705186553
Google Sheet ตัวอย่าง
Google Sheet ตัวอย่าง

เปลี่ยนสิทธิ์เข้าถึง

เราต้องทำให้ Google Sheet อันนี้สามารถเข้าถึงได้จากทุกคนที่มีลิงค์

คลิกที่ปุ่ม Share - Google Sheet
คลิกที่ปุ่ม Share
เปลี่ยนเป็นทุกคนที่มีลิงก์สามารถเข้าดูได้
เปลี่ยนเป็นทุกคนที่มีลิงก์สามารถเข้าดูได้
เสร็จสิ้นการเปลี่ยน Permission
เสร็จสิ้นการเปลี่ยน Permission

ดาวน์โหลด Google Sheet

เราจะให้ Power Query เชื่อมโยงข้อมูลจากในเครื่องของเราก่อน ให้ทำการดาวน์โหลดหรือส่งออก Google Sheet เป็นแบบ Comma-separated values หรือ CSV หรือจะส่งออกเป็น Microsoft Excel ก็ได้ แต่รูปแบบลิงก์ที่ใช้เชื่อมโยงจะแตกต่างกันนิดหน่อย

Download ข้อมูลเป็น CSV
Download ข้อมูลเป็น CSV

เชื่อมโยงข้อมูลด้วย Power Query

เปิดโปรแกรม Microsoft Excel พร้อมกับ New Worksheet ว่างๆ มาหนึ่งอันถ้วน แล้วทำการเชื่อมโยงข้อมูลไปที่ไฟล์ CSV หรือ Excel ที่ดาวน์โหลดในขั้นตอนที่แล้ว

Import Data
Import Data

ทำการ Transform Data

ถ้าต้องการใช้ภาษาไทย ให้เปลี่ยนรูปแบบการเข้ารหัสเป็น 65001: Unicode (UTF-8)

Transform Data
Transform Data

Modify Link

ต่อไปเราจะทำการแก้ไขลิงก์นิดหน่อยเพื่อให้ใช้กับ Power Query

นี่คือลิงก์ของ Google Sheet ที่เราใช้ในบทความนี้ ก๊อปมาจาก Address Bar เลย
https://docs.google.com/spreadsheets/d/1sdEOW0a1V4zyiXYUkbTUUr_bY2bhYWBY9_jP2B3hIqg/edit#gid=1705186553

Link สำหรับ CSV
https://docs.google.com/spreadsheets/d/1sdEOW0a1V4zyiXYUkbTUUr_bY2bhYWBY9_jP2B3hIqg/export?format=csv&gid=1705186553

Link สำหรับ Excel
https://docs.google.com/spreadsheets/d/1sdEOW0a1V4zyiXYUkbTUUr_bY2bhYWBY9_jP2B3hIqg/export?format=xlsx

แก้ไข Data Source ใน Power Query

กลับที่หน้าต่าง Transform Data ให้คลิกที่ Advance Editor เพื่อทำการเปลี่ยน Data Source ด้วยมือ

Open Advance Editor
Open Advance Editor
Change Data Source
Change Data Source

ให้ทำการเปลี่ยน Data Source หรือแหล่งข้อมูล

ของเดิม
Source = Csv.Document(File.Contents("C:\Users\Shinonome\Downloads\MOCK_DATA.csv")

สำหรับ CSV
Source = Csv.Document(Web.Contents("https://docs.google.com/spreadsheets/d/1sdEOW0a1V4zyiXYUkbTUUr_bY2bhYWBY9_jP2B3hIqg/export?format=csv&gid=1705186553")

สำหรับ Excel
Source = Excel.Workbook(Web.Contents("https://docs.google.com/spreadsheets/d/1sdEOW0a1V4zyiXYUkbTUUr_bY2bhYWBY9_jP2B3hIqg/export?format=xlsx")

เมื่อทำการแก้ไข Data Source เสร็จแล้วให้กด Done ถ้าทุกอย่างถูกต้องจะไม่มี Error ปรากฎออกมา

ให้ลองแก้ไขข้อมมูลใน Google Sheet แล้วให้ Refresh ใน Power Query ดู ถ้ข้อมูลเปลี่ยนแปลงตาม Google Sheet แปลว่าทำทุกอย่างถูกต้อง จากนั้นให้ทำการปรับแต่งข้อมูลตามใจชอบ แล้วคลิก Close&Load

Data Source จาก Google Sheet
Data Source จาก Google Sheet

หวังว่าบทความจะช่วยให้ผู้อ่าน เพื่อนๆ ทำงานกับ Google Sheet และ Excel ได้สะดวกยิ่งขึ้นไม่มากก็น้อย

Advertisement