Combiner.CombineTextByDelimiter คืนค่าเป็น ‘ฟังก์ชัน’ ที่ช่วยรวม List ของข้อความด้วยตัวคั่น (Delimiter) ที่กำหนด มักใช้เป็น argument ในฟังก์ชันอื่นๆ เช่น Table.CombineColumns
| อาร์กิวเมนต์ | ชนิด | ค่าเริ่มต้น | คำอธิบาย |
|---|---|---|---|
| delimiter | text | ตัวคั่นที่ใช้ระหว่างข้อความแต่ละรายการ เช่น “, ” หรือ “;” หรือ ” – “ | |
| [quoteStyle]ไม่บังคับ | number | QuoteStyle.None | รูปแบบการใส่เครื่องหมายคำพูด เช่น QuoteStyle.None, QuoteStyle.Csv, QuoteStyle.Json เลือกตามต้องการ |
[ ] = อาร์กิวเมนต์ที่ไม่บังคับ
Combiner.CombineTextByDelimiter ใน Power Query คืนค่าเป็น ‘ฟังก์ชัน’ ที่จะทำหน้าที่รวมข้อความด้วยตัวคั่นที่ระบุ นี่คือฟังก์ชัน factory ที่สร้างเครื่องมือรวมข้อมูลเฉพาะ ไม่ใช่ฟังก์ชันที่ทำงานทันที
ส่วนตัวผมคิดว่าเจ๋งคือประเด็นนี้: Combiner.CombineTextByDelimiter ต่างจาก Text.Combine ตรงที่มันคืนค่าเป็นฟังก์ชัน (Function type) มาให้คุณนำไปใช้ต่อ ไม่ได้ทำการรวมโลดโผน ทำให้เหมาะสำหรับใช้เป็น parameter ในฟังก์ชันอื่นได้สะดวก เช่นเวลารวมหลายคอลัมน์พร้อมกัน
คุณสามารถส่วน quoteStyle เพื่อให้จัดการ CSV-style quoting ได้ถูกต้อง เมื่อข้อมูลมีคอมม่าข้างในก็จะใส่ quote ให้อัตโนมัติ 😎
ระบุวิธีการรวมคอลัมน์ โดยบอกว่าให้ใช้ตัวคั่นอะไร
สร้างฟังก์ชันรวมข้อความเตรียมไว้ แล้วนำไป map กับ List ของ List
สร้างฟังก์ชันรวมด้วยเครื่องหมายขีดกลาง "-" แล้วส่ง List {"A", "B", "C"} เข้าไปให้ทำงาน ผลลัพธ์คือข้อความ A-B-C
ใช้ Combiner.CombineTextByDelimiter กับ Table.CombineColumns เพื่อรวมคอลัมน์ FirstName และ LastName ด้วยช่องว่าง
เมื่อใช้ QuoteStyle.Csv ข้อมูลที่มีคอมม่าข้างในจะถูกใส่ quote เพื่อหลีกเลี่ยงปัญหา CSV parsing
แปลงตัวเลขเป็นข้อความก่อน แล้วใช้ Combiner.CombineTextByDelimiter เพื่อรวมด้วย " + "
Text.Combine ทำการรวมข้อความทันที ส่วน Combiner.CombineTextByDelimiter คืนค่าเป็นฟังก์ชัน ช่วยให้นำไปใช้ใน Table.CombineColumns และฟังก์ชันอื่นๆ ได้สะดวก
ไม่จำเป็น quoteStyle เป็น optional parameter หากข้อมูลไม่มีเครื่องหมายคำพูด ก็ไม่ต้องใส่
Combiner.CombineTextByDelimiter ใช้ delimiter เพียงตัวเดียว หากต้องการรูปแบบการรวมที่ซับซ้อน ต้องสร้างฟังก์ชันเองหรือใช้ Text.Combine แทน
ได้ หากส่ง List ว่าง {} เข้าไป ก็จะคืนค่า empty string "" กลับมา
ฟังก์ชันที่ผู้เขียนโยงไว้กับ Combiner.CombineTextByDelimiter จัดกลุ่มตามหมวด · ชี้ที่ชื่อใดชื่อหนึ่ง แล้วฟังก์ชันที่ใช้คู่กันจะมีจุดทอง
Table.AddColumn เพิ่มคอลัมน์ใหม่ลงในตารางโดยคำนวณค่าจากฟังก์ชันที่กำหนด ใช้คำสั่ง each เพื่ออ้างอิงข้อมูลในแต่ละแถว เช่น each [Price] * [Quantity] สามารถระบุชนิดข้อมูลได้เพื่อเพิ่มประสิทธิภาพและป้องกันข้อผิดพลาดจากการคาดเดาชนิดข้อมูล ทำงานแบบทีละแถวและเหมาะสำหรับสร้างคอลัมน์คำนวณ รวมข้อมูล ใช้เงื่อนไข และการแปลงข้อมูลต่างๆ ใช้ร่วมกับฟังก์ชัน Table.TransformColumns สำหรับแก้ไขคอลัมน์เดิม Table.AddIndexColumn สำหรับเพิ่มหมายเลขลำดับ Table.SelectRows สำหรับกรองแถว Table.FromRecords สำหรับสร้างตารางจากข้อมูล Text.Combine สำหรับรวมข้อความ Number.Round สำหรับปัดเศษ Date.Year สำหรับดึงค่าปี และ Text.Upper สำหรับแปลงเป็นตัวพิมพ์ใหญ่ เพื่อสร้างกระบวนการแปลงข้อมูลที่สมบูรณ์
Table.CombineColumns รวมข้อมูลจากหลายคอลัมน์เข้าด้วยกันเป็นคอลัมน์เดียว โดยใช้ฟังก์ชัน Combiner ที่กำหนดเอง เช่น รวมชื่อ-นามสกุล หรือสร้างรหัสประจำตัว
List.Transform ใช้สำหรับสร้างลิสต์ใหม่โดยนำฟังก์ชันไปประมวลผลแต่ละตัวในลิสต์เดิม
Text.Combine ใช้สำหรับรวมข้อความหลายตัวจาก List เข้าด้วยกันเป็นข้อความเดียว โดยสามารถเลือกใช้ตัวคั่น (separator) เช่น ลูกน้ำ เครื่องหมายขีด หรือ space ได้ เหมาะสำหรับสร้างชื่อเต็ม ที่อยู่ หรือรหัสประจำตัวจากส่วนประกอบย่อยๆ
ยังไม่มีบทความที่เกี่ยวข้องกับฟังก์ชันนี้
Comments
อีเมลของคุณจะไม่ถูกเผยแพร่