วิธีผสานคอลัมน์แบบไดนามิกในตาราง Power Query

วิธีผสานคอลัมน์แบบไดนามิกในตาราง Power Query

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

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

วิธีผสานคอลัมน์แบบไดนามิกในตาราง Power Query

ก่อนที่เราจะเข้าสู่วิธีแก้ปัญหา เรามาตรวจสอบรหัส M ที่ Power Query สร้างขึ้นเมื่อคุณรวมคอลัมน์

สารบัญ

Power Query ตาราง M รหัส

มีสองวิธีในการรวมคอลัมน์ วิธีหนึ่งคือเลือกทั้งคอลัมน์คำอธิบายและกดปุ่ม Shift หรือปุ่มควบคุม จากนั้นเลือกคอลัมน์ 4 เช่นกัน จากนั้นคลิกขวาและเลือกผสานคอลัมน์

วิธีผสานคอลัมน์แบบไดนามิกในตาราง Power Query

หรือบน แท็ บการแปลงเลือกผสานคอลัมน์ และกล่องโต้ตอบนี้จะปรากฏขึ้น ซึ่งให้คุณเลือกตัวคั่น

วิธีผสานคอลัมน์แบบไดนามิกในตาราง Power Query

ในกล่องป๊อปอัป เลือกแท็บ และคุณสามารถป้อนชื่อคอลัมน์ใหม่ได้ ในกรณีนี้ ฉันตั้งชื่อมันว่าคำอธิบาย

วิธีผสานคอลัมน์แบบไดนามิกในตาราง Power Query

ในแถบสูตร เราจะเห็นโค้ด M ที่ขั้นตอนการเปลี่ยนแปลงนี้สร้างขึ้น

วิธีผสานคอลัมน์แบบไดนามิกในตาราง Power Query

หากแถบสูตรไม่ปรากฏบนหน้าจอของคุณ ให้ไปที่แท็บ มุมมอง แล้วเปิดใช้งาน

วิธีผสานคอลัมน์แบบไดนามิกในตาราง Power Query

ดังนั้นฟังก์ชันที่ Power Query ใช้ในการผสานคอลัมน์คือTable.CombinedColumns พารามิเตอร์แรกที่ต้องใช้คือตาราง ตารางนั้นถูกส่งคืนโดยขั้นตอนก่อนหน้าในโค้ดของเรา ดังนั้นในขั้นตอนที่ใช้ คุณจะ เห็นว่าสิ่งนี้เรียกว่าSource

จากนั้น ฮาร์ดโค้ดชื่อคอลัมน์ในรายการ ที่นี่ คุณจะเห็นรายการ initializers และระหว่างค่าในข้อความ คำอธิบายชื่อคอลัมน์ และชื่อคอลัมน์ คอลัมน์ 4 จากนั้น จะเรียกฟังก์ชัน M อื่นเพื่อรวมค่าข้อความในคอลัมน์เหล่านั้น

วิธีผสานคอลัมน์แบบไดนามิกในตาราง Power Query

และสุดท้าย มันจะส่งชื่อคอลัมน์ใหม่เป็นข้อความเพื่อให้เราปรับเปลี่ยนได้

วิธีผสานคอลัมน์แบบไดนามิกในตาราง Power Query

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

การผสานจำนวนคอลัมน์ที่เปลี่ยนแปลงในตาราง Power Query

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

วิธีผสานคอลัมน์แบบไดนามิกในตาราง Power Query

และเพื่อให้ได้ชื่อ คอลัมน์ภายในแถบสูตร ฉันสามารถเพิ่มTable.ColumnNames ฟังก์ชันนี้ส่งคืนรายการพร้อมชื่อคอลัมน์ทั้งหมดจากตารางนั้น ลองเปลี่ยนกลับเป็นตารางโดยคลิกที่To Table

วิธีผสานคอลัมน์แบบไดนามิกในตาราง Power Query

ในกล่องป๊อปอัปนี้ ให้คลิก ตกลง

วิธีผสานคอลัมน์แบบไดนามิกในตาราง Power Query

จากนั้น บน แท็บ เพิ่มคอลัมน์ฉันจะเลือกรูปแบบจากนั้นตัดแต่ง

วิธีผสานคอลัมน์แบบไดนามิกในตาราง Power Query

ตอนนี้ นี่ไม่ใช่การแปลงที่ฉันต้องการทำ แต่มันสร้างรหัส M จำนวนมากให้ฉัน สิ่งที่ฉันต้องทำคือแทนที่ฟังก์ชันการตัดแต่งด้วยตรรกะของฉันเอง

วิธีผสานคอลัมน์แบบไดนามิกในตาราง Power Query

ดังนั้นภายในแถบสูตร แทนที่จะเป็นText.Trimเราสามารถพูดว่า Text.StartsWithแล้วชี้ไปที่คอลัมน์ 1 ของเรา แล้วฉันจะคัดลอกทันที มันต้องการข้อความที่เรากำลังมองหา นั่นคือจะเป็นคอลัมน์ ดังนั้น ถ้ามันขึ้นต้นด้วยคอลัมน์ข้อความ เราก็ต้องการ "null" สำหรับอย่างอื่น เราต้องการอะไรก็ตามที่อยู่ในคอลัมน์ 1 นอกจากนี้ เรายังสามารถเปลี่ยนชื่อคอลัมน์นั้น ดังนั้นในแถบสูตร แทนที่จะเป็น Trim ให้เรียกมันว่าGroupColumn

วิธีผสานคอลัมน์แบบไดนามิกในตาราง Power Query

ตอนนี้ สิ่งที่เราต้องทำคือเติมค่าเหล่านี้ ฉันจะคลิกขวาที่ส่วนหัวของฉันเลือกเติมและลง

วิธีผสานคอลัมน์แบบไดนามิกในตาราง Power Query

ดังนั้นในครั้งถัดไปที่ข้อมูลเข้ามาและจำนวนคอลัมน์มีการเปลี่ยนแปลง กลุ่มนี้จะรับข้อมูลโดยอัตโนมัติ

วิธีผสานคอลัมน์แบบไดนามิกในตาราง Power Query

เปลี่ยนชื่อแบบสอบถามนี้ ฉันจะเรียกมันว่ากลุ่มคอลัมน์

วิธีผสานคอลัมน์แบบไดนามิกในตาราง Power Query

ตรวจสอบให้แน่ใจว่าโหลดถูกปิดใช้งานเนื่องจากนี่เป็นเพียงการสืบค้นที่สนับสนุน

วิธีผสานคอลัมน์แบบไดนามิกในตาราง Power Query

ฉันสามารถอ้างอิงข้อความค้นหาสนับสนุนนี้ได้ และฉันจะเปลี่ยนชื่อในภายหลัง ปล่อยไว้ก่อนดีกว่า ดังนั้น หากคุณจำได้เราเริ่มต้นด้วยการรวมสองคอลัมน์เข้าด้วยกัน และสร้างรายการฮาร์ดโค้ดที่มีชื่อคอลัมน์แต่ตอนนี้ เราสามารถกรอง Description ใน GroupColumn ของเราได้

วิธีผสานคอลัมน์แบบไดนามิกในตาราง Power Query

ดังนั้นหากเราทำการกรองคำอธิบายภายในคอลัมน์ 1 เราจะได้คอลัมน์ที่ตรงตามเกณฑ์นั้น

วิธีผสานคอลัมน์แบบไดนามิกในตาราง Power Query

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

วิธีผสานคอลัมน์แบบไดนามิกในตาราง Power Query

และตอนนี้เราได้รับรายชื่อ ดังนั้นให้ชื่อที่ถูกต้องแก่แบบสอบถามนี้ ( ListDescr ) และตรวจสอบว่ามีการปิดใช้งานจากการโหลดหรือไม่

วิธีผสานคอลัมน์แบบไดนามิกในตาราง Power Query

ตอนนี้ เราสามารถย้อนกลับไปที่การค้นหาผลลัพธ์ของเรา และแทนที่อาร์กิวเมนต์ที่สองที่นี่ด้วยรายการไดนามิกของเรา ที่นี่ เราสามารถอ้างอิงListDescr ของ เรา

วิธีผสานคอลัมน์แบบไดนามิกในตาราง Power Query

ทำซ้ำสำหรับคำอธิบายที่ 2 เช่นกัน ฉันจะไปที่แบบสอบถาม ColumnGroups ของฉัน ฉันจะสร้างข้อมูลอ้างอิงใหม่และเลือกคอลัมน์ที่ต้องการ จากนั้นฉันจะกรองคำอธิบาย 2 ซึ่งจะส่งคืนสามคอลัมน์นี้ ฉันจะคลิกขวาที่ส่วนหัวของฉันแล้วเลือกเจาะลึกและเปลี่ยนชื่อแบบสอบถามนี้ด้วย ( ListDescr2 )

จากนั้นฉันจะย้อนกลับไปที่แบบสอบถามผลลัพธ์ของฉัน เลือกคอลัมน์ Description2 แล้วกด Shift หรือ Control เพื่อเลือกคอลัมน์ถัดไปเช่นกัน (คอลัมน์ 2) ฉันจะคลิกขวาที่ส่วนหัวแล้วเลือกผสานคอลัมน์

วิธีผสานคอลัมน์แบบไดนามิกในตาราง Power Query

ในกล่องป๊อปอัป ฉันจะเลือก Tab เป็นตัวคั่น และฉันจะเรียกสิ่งนี้ว่า Description2

วิธีผสานคอลัมน์แบบไดนามิกในตาราง Power Query

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

วิธีผสานคอลัมน์แบบไดนามิกในตาราง Power Query


วิธีการผสานแบบสอบถามใน LuckyTemplates
พารามิเตอร์แบบสอบถาม LuckyTemplates: การเพิ่มประสิทธิภาพตาราง
การเรียงลำดับคอลัมน์ตารางวันที่ใน LuckyTemplates

บทสรุป

ในบล็อกนี้ ฉันได้แสดงวิธีใช้รหัส M ใน Power Query เพื่อรวมคอลัมน์แบบไดนามิก ไม่ใช่เรื่องยากตราบใดที่คุณคุ้นเคยกับวิธีการทำงานของ Power Query และรหัส M ที่จะใช้

ฉันหวังว่าคุณจะสนุกกับสิ่งนี้ โปรดตรวจสอบลิงก์ด้านล่างสำหรับเนื้อหาที่เกี่ยวข้องเพิ่มเติม

ดีที่สุด!

เมลิสซ่า


ตนเองคืออะไรใน Python: ตัวอย่างในโลกแห่งความเป็นจริง

ตนเองคืออะไรใน Python: ตัวอย่างในโลกแห่งความเป็นจริง

ตนเองคืออะไรใน Python: ตัวอย่างในโลกแห่งความเป็นจริง

วิธีบันทึกและโหลดไฟล์ RDS ใน R

วิธีบันทึกและโหลดไฟล์ RDS ใน R

คุณจะได้เรียนรู้วิธีการบันทึกและโหลดวัตถุจากไฟล์ .rds ใน R บล็อกนี้จะครอบคลุมถึงวิธีการนำเข้าวัตถุจาก R ไปยัง LuckyTemplates

เยี่ยมชม N วันทำการแรก – โซลูชันภาษาการเข้ารหัส DAX

เยี่ยมชม N วันทำการแรก – โซลูชันภาษาการเข้ารหัส DAX

ในบทช่วยสอนภาษาการเข้ารหัส DAX นี้ เรียนรู้วิธีใช้ฟังก์ชัน GENERATE และวิธีเปลี่ยนชื่อหน่วยวัดแบบไดนามิก

แสดงข้อมูลเชิงลึกโดยใช้เทคนิคการแสดงภาพแบบไดนามิกแบบหลายเธรดใน LuckyTemplates

แสดงข้อมูลเชิงลึกโดยใช้เทคนิคการแสดงภาพแบบไดนามิกแบบหลายเธรดใน LuckyTemplates

บทช่วยสอนนี้จะครอบคลุมถึงวิธีการใช้เทคนิค Multi Threaded Dynamic Visuals เพื่อสร้างข้อมูลเชิงลึกจากการแสดงข้อมูลแบบไดนามิกในรายงานของคุณ

บทนำในการกรองบริบทใน LuckyTemplates

บทนำในการกรองบริบทใน LuckyTemplates

ในบทความนี้ ฉันจะเรียกใช้ผ่านบริบทตัวกรอง บริบทตัวกรองเป็นหนึ่งในหัวข้อหลักที่ผู้ใช้ LuckyTemplates ควรเรียนรู้ในขั้นต้น

เคล็ดลับที่ดีที่สุดในการใช้แอปใน LuckyTemplates Online Service

เคล็ดลับที่ดีที่สุดในการใช้แอปใน LuckyTemplates Online Service

ฉันต้องการแสดงให้เห็นว่าบริการออนไลน์ของ LuckyTemplates Apps สามารถช่วยในการจัดการรายงานและข้อมูลเชิงลึกต่างๆ ที่สร้างจากแหล่งข้อมูลต่างๆ ได้อย่างไร

วิเคราะห์การเปลี่ยนแปลงอัตรากำไรล่วงเวลา – การวิเคราะห์ด้วย LuckyTemplates และ DAX

วิเคราะห์การเปลี่ยนแปลงอัตรากำไรล่วงเวลา – การวิเคราะห์ด้วย LuckyTemplates และ DAX

เรียนรู้วิธีคำนวณการเปลี่ยนแปลงอัตรากำไรของคุณโดยใช้เทคนิคต่างๆ เช่น การแยกสาขาและการรวมสูตร DAX ใน LuckyTemplates

แนวคิด Materialization สำหรับแคชข้อมูลใน DAX Studio

แนวคิด Materialization สำหรับแคชข้อมูลใน DAX Studio

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

การรายงานทางธุรกิจโดยใช้ LuckyTemplates

การรายงานทางธุรกิจโดยใช้ LuckyTemplates

หากคุณยังคงใช้ Excel อยู่จนถึงตอนนี้ นี่เป็นเวลาที่ดีที่สุดในการเริ่มใช้ LuckyTemplates สำหรับความต้องการในการรายงานทางธุรกิจของคุณ

เกตเวย์ LuckyTemplates คืออะไร ทั้งหมดที่คุณต้องการรู้

เกตเวย์ LuckyTemplates คืออะไร ทั้งหมดที่คุณต้องการรู้

เกตเวย์ LuckyTemplates คืออะไร ทั้งหมดที่คุณต้องการรู้