ThepExcel Logo
  • บทความ
    • Excel
      • Excel ทั่วไป
      • Excel Pivot Table
      • Excel Power Pivot
      • Power Query
      • Excel Array Formula
      • Excel VBA
      • Excel for Business
      • Excel and Maths
      • ฟังก์ชัน Excel ทั้งหมด
    • Power BI
      • Power Query
      • Data Model
      • DAX Formula
      • Power BI Report
    • Coding
      • Excel VBA
      • Python
      • Power Query M Code
    • AI
      • ChatGPT
      • Stable Diffusion
      • MidJourney
    • Highlights : บทความแนะนำ
    • คลิปวีดีโอ
  • อบรม
    • อบรมลูกค้าองค์กร
    • คอร์สออนไลน์ SkillLane
    • แนะนำวิทยากร
    • Excel/Power BI Skill Map
    • Quiz
  • Shop
    • คอร์สออนไลน์
    • สินค้าทั้งหมด
    • หนังสือเล่ม
    • E-Book
    • Cart
  • Download
    • Download ไฟล์จากเทพเอ็กเซล
    • ThepExcel-Mfx : M Code สำเร็จรูป
    • Date Table สำเร็จรูป
    • กราฟ My Skill
    • github.com/ThepExcel
  • รวม Link
    • รวม Link สอน Excel & Power BI ทั้งไทยและเทศ
    • รวม Link เกี่ยวกับ AI
    • รวม Link Coding
    • หนังสือแนะนำ
    • Facebook ThepExcel
    • YouTube ThepExcel
    • DAX Formatter
  • Contact
    • แนะนำ เทพเอ็กเซล (Thep Excel)
    • แนะนำวิทยากร : อาจารย์ ศิระ เอกบุตร (ระ)
    • นโยบายการคุ้มครองข้อมูลส่วนบุคคล (Privacy Policy)
  • Facebook
  • YouTube

บทที่ 3 : ภาพรวมการทำงานกับ Power Query

Categories 📂

Excel Power Up Content, Highlights : บทความแนะนำ

Tags 🏷️

overview

Power Query นั้นมีขั้นตอนการทำงานหลักๆ อยู่ 3 ขั้น คือ

  1. Get Data : เอาข้อมูลจากไหน?
  2. Transform Data : ดัดแปลงข้อมูลยังไง?
  3. Load Data to… : เสร็จแล้วจะเอา Data ไปไว้ไหน?

ก่อนอื่นให้โหลดไฟล์ตัวอย่างอันนี้ แล้วเรามาดูรายละเอียดแต่ละขั้นตอนกันครับ

สารบัญ

  • Step1 : Get Data เอาไว้เลือกว่าเอาแหล่งข้อมูลจากไหน?
    • ลอง Get Data จากในไฟล์ Excel ตัวเองเข้าไปใน Power Query ก่อน
  • Step2 : Power Query Editor เลือกว่าจะดัดแปลงข้อมูลแบบไหน?
    • ข้อมูลวันที่ แต่ละคนอาจเห็นไม่เหมือนกัน
    • สำรวจ Toolbar
    • เริ่ม Transform ข้อมูล
    • สิ่งที่เราทำลงไปทั้งหมดจะถูกบันทึกไว้เป็น M Code
      • สูตรใน Formula Bar
      • ดู M Code ทั้งหมดได้ใน Advanced Editor
      • เราต้องเข้าใจ M Code มั้ย? 
  • Step 3 : Load To เพื่อสั่งว่าจะให้เอาผลลัพธ์ไว้ที่ไหน? 
  • Load แล้วทำอะไรต่อได้?
    • เราสามารถกด Refresh ผลลัพธ์ที่ Load ออกมาแล้วได้
    • Load แล้วเติมสูตรต่อภายหลังใน Table ผลลัพธ์ได้
    • Load ออกมาแล้วจะแก้ไขทำยังไง?
    • เปลี่ยนการ Load ทีหลังได้
    • Duplicate Query vs Reference Query
  • บทความนี้มีที่มายังไง?
  • สารบัญ Power Query
    • Facebook Group : Power Query Thailand

Step1 : Get Data เอาไว้เลือกว่าเอาแหล่งข้อมูลจากไหน?

Get Data เป็นขั้นตอนแรกที่เราต้องทำ ซึ่งเป็นการเลือกว่าอยากให้ Power Query เอาข้อมูลจากไหน? เราสามารถเลือกข้อมูลได้หลากหลายรูปแบบมากๆ เช่น ข้อมูลจากในไฟล์ Excel เดียวกับที่เปิดอยู่ หรือเอาจากแหล่งอื่น? 

ถ้าเอาจากแหล่งอื่นก็จะต้องกดปุ่ม Get Data (หรือ บางคนจะเห็นเป็นปุ่ม New Query) ก็จะดึงข้อมูลเช่น จาก Excel ไฟล์อื่น, Text File, CSV, Access, Database ต่างๆ, Website, Facebook 

แต่แบบที่ผมคิดว่าเจ๋งสุดๆ คือ การดึงข้อมูลทุกไฟล์จาก Folder ที่กำหนด ซึ่งจะทำให้เราทำงานได้อัตโนมัติมากขึ้นอีก เพราะแค่โยนไฟล์ที่เกี่ยวข้องลงไปใน Folder นั้นแล้วกด Refresh มันก็ดูดข้อมูลไฟล์ใน Folder นั้นมาจัดการได้เลย ซึ่งในสมัยก่อน หากเราจะทำแบบนี้ได้ต้องเขียนโปรแกรม VBA เพื่อวน Loop รายชื่อไฟล์ใน Folder เท่านั้น ซึ่งยากกว่าการใช้ Power Query แยะครับ 555

Tips : อย่างไรก็ตาม การดึงข้อมูลจากแต่ละ Source นั้นมีประสิทธิภาพไม่เท่ากัน เช่น การดึงไฟล์ CSV จะเร็วกว่าการดึงไฟล์จาก Excel แต่ก็ยังแพ้ให้กับความเร็วในการดึงข้อมูลจาก Database โดยตรง ซึ่งเร็วกว่ามากๆ เพราะว่ามันรองรับการ Query ข้อมูลบางส่วนมาได้โดยไม่ต้องโหลดข้อมูลทั้งหมดมาก่อนครับ

ลอง Get Data จากในไฟล์ Excel ตัวเองเข้าไปใน Power Query ก่อน

หากเราจะดึงข้อมูลในไฟล์ Excel เดียวกับที่ทำ Power Query และข้อมูลอยู่ติดกันหมดอยู่แล้ว ให้เลือกข้อมูลช่องใดช่องหนึ่ง แล้วกด Data → From Table/Range เพื่อสร้าง Table ได้เลย (แต่ถ้าขอบเขตพื้นที่ไม่ค่อยชัดเจนต้องเอา Mouse เลือกพื้นที่ดีๆ ก่อนทำเป็น Table นะ)

หากข้อมูลเป็น Table อยู่แล้ว มันจะเอาเข้า Power Query ไปเลย แต่ถ้ายังเป็น Rangle ธรรมดาๆ อยู่ มันจะบังคับให้แปลงเป็น Table ก่อนเสมอ (พฤติกรรมนี้จะเกิดขึ้นเฉพาะกรณีดึงจากข้อมูลในไฟล์ตัวเองเท่านั้น)

พอกด Ok มันจะเอาข้อมูลใน Table นี้เข้าไปในเครื่องมือ Power Query Editor ทันที !!

Tips : ถ้าดึงข้อมูลจากไฟล์อื่นมันจะให้เลือกก่อนว่าจะ Load Data ออกมาเลย หรือจะ Edit/Transform ถ้ากด Edit/Transform ก็จะเข้าสู่ Power Query Editor เช่นกัน

Step2 : Power Query Editor เลือกว่าจะดัดแปลงข้อมูลแบบไหน?

Power Query Editor มีองค์ประกอบ 5 ส่วนหลักๆ คือ

  1. Ribbons : แถบเครื่องมือด้านบน มีเครื่องมือให้เลือกใช้มากมาย
  2. Formula Bar : แสดงสูตรของ Step ที่เราเลือก (เข้ามาครั้งแรกอาจจะยังไม่เห็น)
  3. Queries Pane : อยู่ด้านซ้ายมือ โดย List ของ Query ทั้งหมดในไฟล์ Excel หรือ Power BI ที่เราเปิดอยู่ (มันอาจจะหดอยู่ สามารถกดลูกศรให้แสดงออกมาได้) เราสามารถเปลี่ยนชื่อ Query ในนี้ได้ด้วยการ Double Click ที่ Query ที่ต้องการด้วยครับ
  4. Preview Pane : พื้นที่ตรงกลางที่จะแสดงผลลัพธ์ข้อมูล (แค่บางส่วน)
  5. Query Setting  : อยู่ด้านขวามือ มี Applied Steps บอกว่าเราทำอะไรไปกับข้อมูลบ้าง ซึ่งสามารถแก้ไข/ลบ/สลับลำดับ Step ได้ด้วย และก็สามารถเปลี่ยนชื่อ Query ในช่อง Name ได้เช่นกัน

ข้อมูลวันที่ แต่ละคนอาจเห็นไม่เหมือนกัน

หากลองสำรวจดูในส่วนที่ Preview Pane จะพบว่า ข้อมูลวันที่หากออกมาถูกต้องจะอยู่ชิดขวา และจะใช้รูปแบบวันที่ตามที่ตั้งค่าไว้ใน Control Panel ของเครื่องคอมพิวเตอร์ของเรา (ตรงกับรูปแบบด้านขวาล่างของหน้าจอ ซึ่งของผม ณ ตอนนี้เป็นแบบ Thai) ดังนั้นแต่ละคนอาจเห็นรูปแบบเป็น วัน/เดือน/ปี  เดือน/วัน/ปี หรืออาจจะเห็นเป็น ค.ศ. หรือ พ.ศ. ก็ได้ 

ตรงนี้ยังไม่ต้องซีเรียสหากวันที่ขึ้นไม่เหมือนกับผม เพราะหากเรายังใช้การ Get Data จากวันที่ใน Excel (ซึ่งบันทึกข้อมูลวันที่แบบถูกต้องแล้วจริงๆ) Power Query จะไม่มีปัญหาเรื่องวันที่ครับ แต่ถ้าดึงข้อมูลจาก CSV/Text File หรือวันที่ที่เป็น Text จะต้องมีการจัดการวันที่อย่างเหมาะสม ซึ่งผมจะมีการอธิบายโดยละเอียดในบทที่เราดึงข้อมูลจาก Text/CSV ในช่วงหลังครับ

สำรวจ Toolbar

ถ้ายังไม่เห็น Formula Bar ให้เราเข้าไปติ๊ก option ใน View → Formula Bar ซะก่อน

Tips : กรณีที่สูตรยาวมากๆ ให้กดลูกศรด้านขวาของ Formula Bar เพื่อขยายพื้นที่ให้มันใหญ่ขึ้นครับ

ถ้าสังเกตใน Ribbon ซึ่งจะมี 4 แถบ ดังนี้

  • Home : รวมคำสั่งที่น่าจะใช้บ่อยเอาไว้
  • Transform : เป็นการดัดแปลงข้อมูล โดยแก้ที่ข้อมูลในคอลัมน์เดิมที่เลือกไว้เลย
  • Add Column : เป็นการดัดแปลงข้อมูล โดยไปสร้างคอลัมน์ขึ้นมาใหม่เลย คอลัมน์เดิมจะไม่ได้รับผลกระทบไปด้วย
  • View : เอาไว้ดูเรื่องที่ Advance มากขึ้น เช่น Formula Bar, Advanced Editor, Query Dependency

คำสั่งหลายๆ อันจะอยู่ทั้งในแถบเครื่องมือ Transform กับ Add Column เหมือนกัน แต่จะต่างกันตรงที่หากกดจาก Transform จะเป็นการแก้ข้อมูลในคอลัมน์เดิม (แก้ทับช่องเดิม) แต่ Add Column จะเป็นการเพิ่มคอลัมน์ใหม่ (ไม่กระทบอันเดิม) เช่น 

  • ถ้ากด Format → UPPERCASE ที่ Transform จะแก้คอลัมน์ที่เราเลือกให้เป็นตัวพิมพ์ใหญ่ทันที
  • ถ้ากด Format → UPPERCASE ที่ Add Column จะสร้างคอลัมน์ใหม่ โดยเอาข้อมูล Input จากคอลัมน์ที่เราเลือกแล้วแปลงเป็นตัวพิมพ์ใหญ่

เอาล่ะเกริ่นเรื่องเครื่องมือไปแล้วนิดหน่อย กลับมาสู่งานที่จะทำต่อดีกว่า

เริ่ม Transform ข้อมูล

ต่อไปเราจะ Filter เอาเฉพาะผู้ขายเป็น sales ค และสินค้าเป็น หนังสือ เท่านั้น โดยเราสามารถไป Filter ทีละคอลัมน์ได้เลย โดยผมขอ Filter ผู้ขายเป็น sales ค ก่อน

หากลองไปดูที่ Applied Steps ด้านขวามือจะเห็น Action ที่เราทำแต่ละขั้นตอนถูกบันทึกเอาไว้

และขั้นตอน Filtered Rows จะมีรูปฟันเฟืองขึ้นมาให้เราสามารถกดแก้ไขเงื่อนไขการ Filter ครั้งนี้ได้ด้วย (เผื่อว่าในอนาคตอยากแก้ไข Step นี้ก็สามารถกดที่ฟันเฟืองได้เลยครับ)

แต่ว่าตอนนี้เราจะยังไม่แก้อะไรที่ฟันเฟือง แต่จะลอง Filter ที่คอลัมน์สินค้าให้เหลือแต่หนังสือ จะพบว่า ผลลัพธ์ก็จะเหลือแค่ sales ค และ สินค้าเป็น หนังสือตามที่เราทำ

แต่ปรากฏว่าใน Applied Step มันจะบันทึกรวมการ Filter ทั้งสองอันนี้ไว้ในขั้นตอนเดียวเลย ทั้งนี้เพราะปกติแล้ว Power Query จะพยายามรวบสูตรให้เหลือ Step เดียวถ้าเป็นคำสั่งเดียวกัน (เช่น Filter หลายคอลัมน์ หรือ Sort หลายคอลัมน์) ทั้งนี้เพื่อไม่ให้ Step ขึ้นมาเยอะเกินไป (แต่ที่แย่คือรูปฟันเฟืองอาจจะหายไปด้วย!) 

โดยที่เราสามารถลบ Step ที่ไม่ต้องการทิ้ง หรือ ลากสลับลำดับการทำได้ตามใจชอบ หรือจะคลิ๊กกลับไปดู Step ก่อนหน้าว่าผลลัพธ์ของ Step นั้นมีหน้าตายังไงได้ด้วย และอย่าลืมว่าหาก Step ไหนมีรูปฟันเฟือง แปลว่าเราสามารถกดเข้าไปแก้ไขรายละเอียดใน Step นั้นได้นะ

Tips: ถ้าเราทำการดัดแปลงข้อมูลด้วย Step ที่เป็นคนละคำสั่งกัน มันจะแยก Step ออกมาชัดเจนเลยครับ เช่น Filter ก่อน แล้วทำอย่างอื่นเช่น Sort แล้ว Filter อีกที คราวนี้จะแยกกันหมดเลย ดังนั้นหากมันเกิดการรวบ Step แบบที่เราไม่ต้องการ เราบังคับแยก Step ด้วยวิธีนี้ก่อนแล้วเราค่อยกดลบ Step คั่นกลางที่ไม่ต้องการออกทีหลังได้นะ

สิ่งที่เราทำลงไปทั้งหมดจะถูกบันทึกไว้เป็น M Code

สูตรใน Formula Bar

หากเรากดดูที่แต่ละ Step ที่เราทำไป เช่น ดู Step ที่ชื่อว่า Filtered Rows จะพบว่ามีสูตรเกิดขึ้นใน Formula Bar ที่แตกต่างกันในแต่ละ Step ด้วย 

ดังนั้นการที่เรากด Filter โดยแท้จริงก็คือการเลือกว่าจะเอาบรรทัดไหนไว้ สิ่งที่เกิดขึ้นก็คือ Power Query จะทำการสร้างสูตร M Code ที่ชื่อว่า Table.SelectRows ขึ้นมาโดยอัตโนมัติ นั่นแปลว่า การกดคำคั่งเป็นเมนู เป็นแค่ตัวช่วยสร้าง M Code ขึ้นมานั่นเอง

เจ้า M Code หรือ M Language นี่เองเป็นภาษาที่ Power Query ใช้ทำงานทั้งหมด ทุกอย่างที่เกิดขึ้นใน Power Query สามารถเขียนหรือถูกแปลงออกมาเป็น M Code ได้ทั้งนั้น

ยกตัวอย่างเช่น ผมลองลบคอลัมน์ที่ไม่ต้องการออก เช่น ผมจะเอาคอลัมน์วิธีการชำระเงินออกไป โดย คลิ๊กขวา Remove หรือ เลือกคอลัมน์แล้วกด Del บนคีย์บอร์ดก็ได้

จะเห็นว่าคอลัมน์ที่เราเลือกก็จะหายไป และสูตรใน Formula Bar ก็จะเปลี่ยนไปด้วย กลายเป็นสูตรของ Step ที่เราลบคอลัมน์ออก

ดู M Code ทั้งหมดได้ใน Advanced Editor

การดู M Code ที่ Formula Bar นั้นเป็นการดู Code ทีละ Step แต่ถ้าหากเราอยากดู M Code ทั้งหมดของทั้ง Query นี้เลย ให้กดดูที่ View → Advanced Editor ได้เลย เจ้า M Code นี่เองคือเบื้องหลังการทำงานทั้งหมดของ Query นี้ (ถ้ายังดูไม่รู้เรื่องเลยก็ไม่ต้องแปลกใจครับ ใครๆ เห็นครั้งแรกก็ช๊อคทั้งนั้น 555) 

เราสามารถ Copy M Code นี้ไปถามเพื่อนหรือผู้เชี่ยวชาญการทำ Power Query ใน Internet เพื่อปรึกษาปัญหาต่างๆ ได้ โดยไม่ต้องนั่ง Save Screenshot ทุก Step ว่าเราทำอะไรไปบ้าง เนื่องจากหากคนอ่าน M Code เป็น ก็จะเข้าใจเรื่องราวทั้งหมดในทันที (แต่ต้องเห็นหน้าตา Data Source ตั้งต้นด้วยนะ ไม่งั้นจะรู้ได้ไงว่าแรกสุดเป็นยังไง 55)

เราต้องเข้าใจ M Code มั้ย? 

โดยทั่วไปเจ้าเครื่องมือ User Interfaceมาตรฐาน ที่กดง่ายๆ ของ Power Query น่าจะช่วย Cover งานของพวกเราได้ประมาณ 70%-80% แล้วล่ะ แปลว่าถึงไม่เข้าใจ M Code เราก็ใช้ Power Query ได้ครับ 

แต่มันก็ยังมีงานบางอย่างที่จำเป็นต้องมีการแก้ไข M Code ให้ Power Query เราทำงานได้ดียิ่งขึ้นไปอีกครับ ซึ่งเราจะลงรายละเอียดกันทีหลังครับ

Step 3 : Load To เพื่อสั่งว่าจะให้เอาผลลัพธ์ไว้ที่ไหน? 

ถ้าเราไปที่ Home → กดที่ icon Close & Load ไปเลย ปกติจะส่งข้อมูลออกไปเป็น Table ใหม่ทันที

แต่ถ้ากดลูกศรแล้วเลือก Close & Load to… จะสามารถเลือก option ได้ว่าอยากให้ผลลัพธ์ไปโผล่ที่ไหน

ใน Excel จะมีให้เลือก 4 แบบหลักๆ คือ

  • Table : แบบนี้จะสร้างออกมาเป็น Table ก่อน ถ้าเอาไปเข้า Pivot Table อีกที ต้อง Refresh 2 ต่อ
  • PivotTable Report : ส่ง Data เข้า Pivot Table เลย สามารถ Refresh ที่ Pivot Table ทีเดียวจบ
  • PivotChart : เหมือน Pivot Table แต่เป็นการสร้างกราฟ (ซึ่งก็สร้าง Pivot Table อยู่ดี)
  • Only Create Connection : สร้าง Query ไว้เฉยๆ โดยยังไม่เอาข้อมูลออกมาจริงๆ

และยังมี Option ให้เลือก Add this data to the Data Model ต่างหากอีกอันนึง ซึ่งตัว Data Model จะเอาไว้ใช้ทำ Power Pivot หรือ PivotTable แบบ Advance ต่อไปซึ่งจะรองรับเรื่องการผูก Relationship ระหว่างหลายๆ ตารางด้วยครับ

หากจะสร้าง Power Pivot จะต้องเลือก Add this data to Data Model ด้วย และเมื่อเราสร้าง Pivot Table โดยใช้ Source Data จาก Data Model ก็จะสามารถ Refresh ข้อมูลที่ Pivot Table ทีเดียวได้เช่นกัน

ในกรณีนี้เราจะลองเลือก Table ดู จะเห็นว่ามันก็จะสร้าง Table ผลลัพธ์ขึ้นมาใหม่อีกอัน โดยจะแยกจาก Table ที่เป็น Source หรือแหล่งข้อมูลนะครับ เราไม่สามารถเอาผลลัพธ์ไปทับแหล่งข้อมูลต้นทางได้นะ

สังเกต วันที่ที่ออกมา คราวนี้ Format มันจะเป็น ค.ศ. นะครับ (อาจไม่ตรงกับที่ Preview ใน Power Query) และถ้าลองเปลี่ยน Format เป็น General จะได้เลข 4 หมื่นกว่าๆ ซึ่งเป็นค่าที่แท้จริงของวันที่ใน Excel ครับ

Load แล้วทำอะไรต่อได้?

เราสามารถกด Refresh ผลลัพธ์ที่ Load ออกมาแล้วได้

สิ่งที่เป็นหัวใจสำคัญของ Power Query ก็คือความสามารถในการ Refresh ผลลัพธ์ได้ 

ให้คุณลองไปแก้ไขข้อมูลต้นฉบับ ไม่ว่าจะเป็นการพิมพ์ข้อมูลเพิ่ม ลบข้อมูลเดิม หรือแก้ไขข้อมูลก็ตาม จากนั้นไปคลิ๊กขวาที่ตารางผลลัพธ์แล้วกด Refresh เพื่อดูว่าผลลัพธ์เปลี่ยนแปลงหรือไม่

ซึ่งการ Refresh โดยแท้จริงก็คือการสั่ง Run M Code ทั้งหมดที่เราสั่งไว้ให้มันทำงานแต่ละ Step นั่นเอง หรือพูดง่ายๆ คือ Run สิ่งที่อยู่ใน Advanced Editor ของ Query นั้นๆ ครับ

Load แล้วเติมสูตรต่อภายหลังใน Table ผลลัพธ์ได้

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

ซึ่งแนวทางนี้ก็ใช้ได้กับทั้ง Excel Table เองที่สามารถใช้สูตร Excel ธรรมดา และตัว Data Model เองที่สามารถใช้สูตรแบบ DAX ได้ครับ

ดังนั้นการเขียนสูตรคำนวณจึงสามารถทำได้ทั้งใน Power Query เองด้วยการสร้าง Custom Column หรือจะเขียนสูตรใน Excel หรือจะเขียน Calculated Column เพิ่มใน Data Model ด้วย DAX ก็ได้ครับ (แต่อาจจะมีความยากง่ายและ Performance ที่ต่างกันแล้วแต่กรณีอีก)

Load ออกมาแล้วจะแก้ไขทำยังไง?

ทำได้หลายแบบ เช่น ในบริเวณ Queries & Connections ด้านขวา สามารถคลิ๊กขวาแล้ว Edit เพื่อกลับไปแก้ไข Query ที่ต้องการได้เลย

Tips : ถ้าหา Queries & Connections ด้านขวาไม่เจอ ก็ให้ไปที่แถบ Data → Queries & Connections (หรืออาจเห็นเป็น Show Queries)

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

ยกตัวอย่างเช่น คุณสามารถลบ Step Filtered Rows ทิ้งได้โดยกดที่เครื่องหมายกากบาท ข้างหน้า Step Filtered Rows

ครั้งนี้ผมอาจจะเปลี่ยนเป็นไป Filter ให้เหลือเฉพาะลูกค้า C00015 ก็ได้ จากนั้นกด Close & Load ออกมา จะเห็นว่าตารางเดิมที่เคยเป็น sales ค ขายหนังสือ ได้เปลี่ยนไปเป็นผลลัพธ์ใหม่คือลูกค้า C00015 ทันที 

แต่หากเราเคย Load Query นั้นออกมาแล้ว ไม่ว่าจะ Load ด้วยวิธีไหนก็ตาม ครั้งต่อไปคำสั่ง Load To… จะกลายเป็นสีเทาไม่ให้เรากด เราจึงเลือกได้แต่ Close & Load เพียงอย่างเดียว 

ซึ่งมันจะ Load ออกมาด้วยวิธีเดิมกับที่เคย Load ครั้งก่อนหน้าเสมอ (เช่น ก่อนหน้า Load ออกมาเป็น Table พอ Close & Load ก็จะออกมาเป็น Table)

หากเราต้องการจะเปลี่ยนวิธีการ Load ให้ทำด้วยวิธีต่อไปนี้ 

เปลี่ยนการ Load ทีหลังได้

หากเราเคย Load Data ออกมาเป็นแบบนึงแล้ว ในแถบ Queries & Connection เราเราสามารถคลิ๊กขวาที่ Query ที่ต้องการ แล้วเลือก Load To… เพื่อเปลี่ยนวิธีการ Load ได้

ถ้าหากเคย Load ออกมาเป็น Table แล้วเราไปคลิ๊กขวา Load To… แล้วเปลี่ยนเป็น Connection Only ตัวTable ก็จะหายไป ส่วนตรง Query ก็จะกลายเป็น Connection Only

ในทางกลับกัน หากเราลบตารางผลลัพธ์ทิ้งไป ตรงบริเวณ Queries & Connections จะเปลี่ยนจาก Table เป็นการ Load แบบ Connection Only แทนเช่นกัน

อย่างไรก็ตาม ถ้าเราใช้วิธีคลิ้กขวาแล้ว Delete Query ทิ้ง ตัว Table จะไม่หายไปนะครับ

Duplicate Query vs Reference Query

เราสามารถคลิ๊กขวาที่ Query ในแถบ Queries & Connection เพื่อที่จะสร้าง Query ใหม่ที่อ้างอิง Query เดิมได้ แต่มันจะมีให้เลือก 2 แบบ คือ Duplicate หรือ Reference Query

ซึ่งดูเผินๆ ผลลัพธ์หน้าตาอาจดูเหมือนกัน แต่จริงๆ แล้วมีความต่างกันดังนี้

  • Duplicate : Copy Query ต้นฉบับออกมาเป็น Query ตัวใหม่อีกตัวนึง ซึ่งมี Step ทุกอย่างครบเหมือนเดิมทุกประการ (ผลลัพธ์ที่เหมือน Query ต้นฉบับจะอยู่ Step สุดท้าย)
  • Reference : สร้าง Query ใหม่โดยอ้าง Source ไปที่ผลลัพธ์จาก Query ต้นฉบับ ซึ่ง Step จะโผล่มาอันเดียว นั่นคือ เอาผลลัพธ์ของ Query ที่มันอ้างอิงถึงมาเป็น Source ของ Query ใหม่
    (ผลลัพธ์ที่เหมือน Query ต้นฉบับจะอยู่ตั้งแต่ Step แรกเลย)

ข้อที่ต่างกันชัดเจน คือ หากเราไปแก้ที่ Query ต้นฉบับ เจ้า Duplicate Query จะไม่เปลี่ยนตาม แต่ Reference Query จะเปลี่ยนตามไปด้วย (เพราะมัน Link มาจากผลลัพธ์ของต้นฉบับนั่นเอง)

บทความนี้มีที่มายังไง?

บทความนี้เป็นส่วนหนึ่งของตัวอย่างจาก หนังสือ Excel Power Up! เพิ่มพลังการใช้ Excel ของคุณด้วย Power Query โดยผมเอาเนื้อหาบทแรกๆ ซัก 25-30% มาลงในเว็บให้อ่านกันฟรีๆ เลย คนอ่านจะได้ตัดสินใจได้ว่าอยากจะรู้เรื่องราวหลังจากนั้นอีกมั้ย? ซึ่งแค่นี้ก็น่าจะช่วยงานคุณได้เยอะพอสมควรแล้วล่ะ


หากสนใจอ่านตัวอย่างบทอื่นๆ ของหนังสือ ลองดูที่สารบัญข้างล่างได้เลยครับ ^^

สารบัญ Power Query

บทนำ : ทำไมต้องเรียนรู้ Power Query? [ไฟล์ประกอบ]
บทที่ 1 : เข้าใจขั้นตอนการทำรายงานสรุป / วิเคราะห์ข้อมูล [ไฟล์ประกอบ]
บทที่ 2 : ก้าวสู่การเตรียมข้อมูลยุคใหม่ด้วย Power Query [ไฟล์ประกอบ]
บทที่ 3 : ภาพรวมการทำงานกับ Power Query [ไฟล์ประกอบ]
บทที่ 4 : งานที่ยุ่งยากใน Excel กลับง่ายมากใน Power Query [ไฟล์ประกอบ]
บทที่ 5 : การจัดการหัวตาราง [ไฟล์ประกอบ]
บทที่ 6 : การคำนวณเบื้องต้น [ไฟล์ประกอบ]
บทที่ 7 : การกำจัดข้อมูลที่ไม่ต้องการ [ไฟล์ประกอบ]
บทที่ 8 : การสร้างคอลัมน์ใหม่แบบกำหนดเองด้วย Custom Column [ไฟล์ประกอบ]
บทที่ 9 : การสร้างคอลัมน์ใหม่ตามเงื่อนไข [ไฟล์ประกอบ]
บทที่ 10 : การรวมกลุ่มข้อมูลด้วย Group By [ไฟล์ประกอบ]
บทที่ 11 : การพลิกคอลัมน์เป็นหัวตารางด้วย Pivot Column [ไฟล์ประกอบ]
บทที่ 12 : การยุบหัวตารางหลายคอลัมน์ให้เหลือคอลัมน์เดียวด้วย Unpivot [ไฟล์ประกอบ]
บทที่ 13 : การแยกข้อมูลในคอลัมน์เดียวออกจากกันด้วย Split Column [ไฟล์ประกอบ]
บทที่ 14 : การใช้ Query เป็นตัวแปร [ไฟล์ประกอบ]
บทที่ 15 : การรวมข้อมูลจากหลาย Query [ไฟล์ประกอบ]
บทที่ 16 : การดึงข้อมูลจาก Excel ไฟล์อื่น [ไฟล์ประกอบ]
บทที่ 17 : การดึงข้อมูลจาก Text File/ CSV File [ไฟล์ประกอบ]
บทที่ 18 : การดึงข้อมูลจากทุก File ที่ต้องการใน Folder [ไฟล์ประกอบ]
บทที่ 19 : การดึงข้อมูลจากแหล่งอื่นๆ
บทที่ 20 : การเตรียม Data เพื่อทำ Dashboard
บทที่ 21 : การทำ Pivot Table เพื่อสร้าง Dashboard
บทที่ 22 : เจาะลึก M Code หัวใจของ Power Query
บทที่ 23 : Function คือ ขุมพลังที่แท้จริงของ M Code [ไฟล์ประกอบ]
บทที่ 24 : ตัวอย่างการสร้าง Custom Function [ไฟล์ประกอบ]
บทที่ 25 : การวน Loop [ไฟล์ประกอบ]
บทส่งท้าย : เทพที่แท้จริง

อ่านเนื้อหาบท 22 เป็นต้นไปแบบปรับปรุงใหม่ได้ฟรี ที่นี่ (อัปเดทเรื่อยๆ)

Facebook Group : Power Query Thailand

Facebook Group : Power Query Thailand

ผู้ที่สนใจ Power Query อย่างคุณที่มาอ่านบทความนี้ ผมขอเชิญชวนเข้ากลุ่มปิด Power Query Thailand ได้ตาม Link นี้ครับ

แชร์ความรู้ให้เพื่อนๆ ของคุณ
337    
337    

ติดตามเทพเอ็กเซล

  • Facebook
  • YouTube

อบรมกับเทพเอ็กเซล

🔥 คอร์สใหม่ล่าสุด 🔥

การทำ Optimization ด้วย Excel Solver
สำหรับงานวางแผน
คอร์สออนไลน์ เทพเอ็กเซล
คอร์สออนไลน์ จากเทพเอ็กเซล ดูกี่รอบก็ได้
อบรม Excel / Power BI ให้องค์กรของคุณ

บทความล่าสุด

  • วิธีผสม Model สูตรผสมแบบโดนใจใน Stable Diffusion [Part7]
  • สอนทำรูปตัวเองคู่กับสาว ใน Stable Diffusion [Part6]
  • สอน Train Model ตัวเองใน Stable Diffusion [Part5]
  • 10 Levels การเขียนสูตร Excel ในยุคใหม่
  • บันได 10 ขั้น เริ่มเรียนรู้ M Code ขุมพลังของ Power Query
  • แนวทางฝึกฝน Excel ให้เก่งขึ้น
  • รวม Link เว็บ/เพจเกี่ยวกับ AI

บทความแนะนำ

🔥ฟังก์ชันทั้งหมดใน Excel 🔥

  • 10 Levels การเขียนสูตร Excel ในยุคใหม่
  • แกะเคล็ดวิชา Excel Wizard ในการแข่ง Speed Run Excel ระดับโลก
  • เจาะลึก CALCULATE ใน DAX แบบลึกสุดใจ : Part 1
  • Series สอนดึงข้อมูลจากเว็บ ด้วย Power Automate Desktop
  • สรุปการใช้ LAMBDA ฟังก์ชันที่ใช้สร้างฟังก์ชันใน Excel 365 และผองเพื่อน
  • วิธีใช้ Excel คำนวณระยะเวลาการทำงานรวม แถมระบุเวลาพักได้แบบยืดหยุ่น
  • วิธีจัดการข้อมูลแย่ๆ ด้วย Power Query ทั้งข้อมูลปนกัน ข้อมูลอยู่บนหัวตาราง

Categories

Tags

ai collection concepts copy database Data Model data validation date dax dropdown error excel filter finance find format formula function game graph IF index intro len link logic lookup match matrix mcode m code merge mid overview paste pivot power query row sort speed split stable diffusion substitute table text time tips trim vba vlookup

Archives

  • April 2023 (8)
  • March 2023 (2)
  • February 2023 (2)
  • January 2023 (1)
  • October 2022 (1)
  • September 2022 (3)
  • August 2022 (3)
  • July 2022 (1)
  • June 2022 (3)
  • May 2022 (1)
  • April 2022 (2)
  • February 2022 (1)
  • December 2021 (2)
  • November 2021 (10)
  • September 2021 (2)
  • August 2021 (6)
  • July 2021 (2)
  • June 2021 (2)
  • May 2021 (10)
  • April 2021 (3)
  • March 2021 (3)
  • February 2021 (4)
  • January 2021 (8)
  • December 2020 (5)
  • November 2020 (13)
  • October 2020 (5)
  • September 2020 (11)
  • August 2020 (4)
  • July 2020 (13)
  • June 2020 (17)
  • May 2020 (16)
  • April 2020 (16)
  • March 2020 (10)
  • February 2020 (15)
  • January 2020 (16)
  • December 2019 (4)
  • November 2019 (3)
  • October 2019 (9)
  • September 2019 (1)
  • August 2019 (7)
  • June 2019 (3)
  • May 2019 (9)
  • April 2019 (9)
  • March 2019 (2)
  • February 2018 (1)
  • January 2018 (3)
  • November 2017 (3)
  • August 2017 (1)
  • July 2017 (1)
  • June 2017 (1)
  • May 2017 (6)
  • April 2017 (6)
  • March 2017 (7)
  • February 2017 (1)
  • January 2017 (2)
  • December 2016 (1)
  • October 2016 (2)
  • September 2016 (3)
  • August 2016 (2)
  • July 2016 (2)
  • June 2016 (1)
  • May 2016 (1)
  • April 2016 (1)
  • March 2016 (2)
  • February 2016 (1)
  • January 2016 (2)
  • December 2015 (2)
  • November 2015 (5)
  • October 2015 (3)
  • June 2015 (2)
  • May 2015 (1)
  • April 2015 (26)
  • January 2015 (1)
  • December 2014 (1)
  • November 2014 (2)
  • October 2014 (1)
  • September 2014 (2)
  • August 2014 (1)
  • June 2014 (1)
  • May 2014 (1)
  • April 2014 (3)
  • March 2014 (3)
  • February 2014 (12)
  • January 2014 (7)
  • December 2013 (2)
  • November 2013 (8)
  • October 2013 (2)

เทพเอ็กเซล : Thep Excel

copyright © 2022

  • Facebook
  • YouTube
เว็บไซต์นี้ใช้คุกกี้ (Cookies)
บริษัท เทพเอ็กเซล จำกัด ให้ความสำคัญต่อข้อมูลส่วนบุคคลของท่าน เพื่อการพัฒนาและปรับปรุงเว็บไซต์รวมถึงสินค้าและบริการต่างๆ หากท่านใช้บริการเว็บไซต์นี้ โดยไม่มีการปรับตั้งค่าใดๆ แสดงว่าท่านยินยอมที่จะรับคุกกี้บนเว็บไซต์ และนโยบายสิทธิส่วนบุคคลของเรา
ตั้งค่าคุกกี้ยอมรับทั้งหมดอ่านเพิ่มเติม
Manage consent

Privacy Overview

This website uses cookies to improve your experience while you navigate through the website. Out of these, the cookies that are categorized as necessary are stored on your browser as they are essential for the working of basic functionalities of the website. We also use third-party cookies that help us analyze and understand how you use this website. These cookies will be stored in your browser only with your consent. You also have the option to opt-out of these cookies. But opting out of some of these cookies may affect your browsing experience.
Necessary
Always Enabled
Necessary cookies are absolutely essential for the website to function properly. These cookies ensure basic functionalities and security features of the website, anonymously.
CookieDurationDescription
cookielawinfo-checkbox-analytics11 monthsThis cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Analytics".
cookielawinfo-checkbox-functional11 monthsThe cookie is set by GDPR cookie consent to record the user consent for the cookies in the category "Functional".
cookielawinfo-checkbox-necessary11 monthsThis cookie is set by GDPR Cookie Consent plugin. The cookies is used to store the user consent for the cookies in the category "Necessary".
cookielawinfo-checkbox-others11 monthsThis cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Other.
cookielawinfo-checkbox-performance11 monthsThis cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Performance".
viewed_cookie_policy11 monthsThe cookie is set by the GDPR Cookie Consent plugin and is used to store whether or not user has consented to the use of cookies. It does not store any personal data.
Functional
Functional cookies help to perform certain functionalities like sharing the content of the website on social media platforms, collect feedbacks, and other third-party features.
Performance
Performance cookies are used to understand and analyze the key performance indexes of the website which helps in delivering a better user experience for the visitors.
Analytics
Analytical cookies are used to understand how visitors interact with the website. These cookies help provide information on metrics the number of visitors, bounce rate, traffic source, etc.
Advertisement
Advertisement cookies are used to provide visitors with relevant ads and marketing campaigns. These cookies track visitors across websites and collect information to provide customized ads.
Others
Other uncategorized cookies are those that are being analyzed and have not been classified into a category as yet.
SAVE & ACCEPT