Table.SelectColumns
อัปเดต 3 ต.ค. 2569 · ตารางทุกขั้นในตัวอย่างตรงกับตัวคำนวณอ้างอิงที่เขียนแยก · ยังไม่ได้ตรวจใน Power Query ของ Excel หรือ Power BI Desktop
เอกสารอ้างอิง: Table.SelectColumns (Microsoft Learn) · ตัวจำลองบนหน้านี้รองรับเฉพาะฟังก์ชันและรูปแบบที่ใช้ในตัวอย่าง วันที่แสดงแบบ วัน/เดือน/ปี ค.ศ.
Table.SelectColumns คืออะไร
เลือกเฉพาะคอลัมน์ที่ต้องการ คอลัมน์อื่นหายไป และคอลัมน์เรียงตามลำดับใน list
ใช้เมื่อไหร่
- เก็บเฉพาะคอลัมน์ที่รายงานใช้ เพื่อให้ไฟล์เล็กลง
- จัดลำดับคอลัมน์ใหม่ไปพร้อมกัน
รูปแบบสูตร
optional คือไม่ใส่ก็ได้ · ชื่อฟังก์ชันต้องสะกดตัวพิมพ์ใหญ่เล็กให้ตรง
Argument แต่ละตัว
ชี้ที่ argument ในรูปแบบสูตรด้านบนเพื่อไฮไลต์แถวนั้น
| Argument | จำเป็นไหม | ความหมาย |
|---|---|---|
| table | จำเป็น | ตารางต้นทาง |
| columns | จำเป็น | ชื่อคอลัมน์ หรือ list ชื่อคอลัมน์ที่เก็บไว้ ลำดับใน list คือลำดับคอลัมน์ของผลลัพธ์ |
| missingField | ไม่บังคับ | ทำอย่างไรเมื่อไม่พบคอลัมน์ เช่น MissingField.UseNull ใส่คอลัมน์ว่าง (ไม่ใส่ = ขึ้น Error) |
ลองเลย: เก็บเฉพาะคอลัมน์ที่รายงานใช้
คลิกขั้นใน Applied Steps เพื่อดูตารางหลังขั้นนั้น สลับดูก่อนและหลังขั้น เปลี่ยนค่าที่ปุ่มด้านบน หรือแก้สูตรในแถบสูตรแล้วกดคำนวณ
| แถว | วันที่100% | ABCภูมิภาค100% | ABCช่องทาง100% | 123จำนวน100% |
|---|---|---|---|---|
| 1 | 2/1/2025 | เหนือ | Online | 54 |
| 2 | 4/1/2025 | กลาง | Online | 35 |
| 3 | 5/1/2025 | กลาง | Online | 38 |
| 4 | 7/1/2025 | กลาง | Food Service | 20 |
| 5 | 7/1/2025 | กลาง | Modern Trade | 18 |
| 6 | 8/1/2025 | ตะวันออกเฉียงเหนือ | Modern Trade | 21 |
| 7 | 9/1/2025 | ตะวันออก | Modern Trade | 30 |
| 8 | 11/1/2025 | เหนือ | Online | 20 |
| 9 | 12/1/2025 | ตะวันออกเฉียงเหนือ | Food Service | 15 |
| 10 | 13/1/2025 | เหนือ | Online | 37 |
| 11 | 14/1/2025 | กลาง | Traditional Trade | 39 |
| 12 | 15/1/2025 | ตะวันออกเฉียงเหนือ | Online | 24 |
| 13 | 16/1/2025 | ตะวันออก | Traditional Trade | 50 |
| 14 | 16/1/2025 | ใต้ | Traditional Trade | 35 |
| 15 | 17/1/2025 | ตะวันออกเฉียงเหนือ | Modern Trade | 6 |
| 16 | 18/1/2025 | กลาง | Traditional Trade | 44 |
| 17 | 20/1/2025 | ใต้ | Online | 48 |
| 18 | 21/1/2025 | ใต้ | Traditional Trade | 51 |
| 19 | 22/1/2025 | กลาง | Food Service | 21 |
| 20 | 25/1/2025 | ใต้ | Modern Trade | 20 |
| 21 | 26/1/2025 | ใต้ | Traditional Trade | 38 |
| 22 | 29/1/2025 | เหนือ | Modern Trade | 38 |
| 23 | 30/1/2025 | ใต้ | Modern Trade | 16 |
| 24 | 1/2/2025 | เหนือ | Traditional Trade | 22 |
| 25 | 3/2/2025 | เหนือ | Modern Trade | 18 |
| 26 | 6/2/2025 | ตะวันออกเฉียงเหนือ | Online | 7 |
| 27 | 8/2/2025 | กลาง | Online | 20 |
| 28 | 9/2/2025 | กลาง | Food Service | 7 |
| 29 | 10/2/2025 | กลาง | Modern Trade | 33 |
| 30 | 10/2/2025 | ใต้ | Modern Trade | 33 |
| 31 | 13/2/2025 | ตะวันออกเฉียงเหนือ | Traditional Trade | 21 |
| 32 | 15/2/2025 | เหนือ | Food Service | 43 |
| 33 | 16/2/2025 | กลาง | Online | 28 |
| 34 | 19/2/2025 | กลาง | Online | 10 |
| 35 | 19/2/2025 | กลาง | Online | 19 |
| 36 | 20/2/2025 | ตะวันออกเฉียงเหนือ | Food Service | 20 |
| 37 | 20/2/2025 | เหนือ | Modern Trade | 32 |
| 38 | 21/2/2025 | ตะวันออกเฉียงเหนือ | Modern Trade | 41 |
| 39 | 22/2/2025 | เหนือ | Modern Trade | 32 |
| 40 | 23/2/2025 | กลาง | Online | 42 |
Removed Other Columns · ขั้นนี้ทำอะไร
Table.SelectColumns รับตาราง 65 แถว × 9 คอลัมน์ ได้ 65 แถว × 4 คอลัมน์
เก็บคอลัมน์ตามลำดับนี้ วันที่ ภูมิภาค ช่องทาง จำนวน · ตัดออก 5 คอลัมน์
Advanced Editor · โค้ดทั้ง query
let Source = Excel.CurrentWorkbook(){[Name="Sales"]}[Content], #"Changed Type" = Table.TransformColumnTypes(Source,{{"เลขที่คำสั่งซื้อ", type text}, {"วันที่", type date}, {"รหัสสินค้า", type text}, {"พนักงานขาย", type text}, {"ภูมิภาค", type text}, {"ช่องทาง", type text}, {"จำนวน", Int64.Type}, {"ราคาต่อหน่วย", type number}, {"ส่วนลด", type number}}), #"Removed Other Columns" = Table.SelectColumns(#"Changed Type",{"วันที่", "ภูมิภาค", "ช่องทาง", "จำนวน"}) in #"Removed Other Columns"วางใน Home › Advanced Editor ของ Power Query ในไฟล์ฝึกได้ทันที
ถ้าคุณใช้ Excel หรือ DAX อยู่แล้ว
=CHOOSECOLS(A2:I66, 2, 5, 6, 7)CHOOSECOLS ใน Excel 365 เลือกคอลัมน์ด้วยลำดับที่ Power Query เลือกด้วยชื่อ จึงไม่พังเมื่อคอลัมน์ต้นทางสลับตำแหน่ง
#"Removed Other Columns" = Table.SelectColumns(#"Changed Type",{"วันที่", "ภูมิภาค", "ช่องทาง", "จำนวน"})เลือกเฉพาะคอลัมน์ที่ต้องการ คอลัมน์อื่นหายไป และคอลัมน์เรียงตามลำดับใน list
SELECTCOLUMNS('ยอดขาย', "วันที่", 'ยอดขาย'[วันที่], "จำนวน", 'ยอดขาย'[จำนวน])SELECTCOLUMNS ใน DAX สร้างตารางในหน่วยความจำระหว่างคำนวณ ส่วน Table.SelectColumns ลดคอลัมน์ก่อนโหลด ทำให้ไฟล์ Power BI เล็กลง
ข้อผิดพลาดและเคล็ดลับ
แบบทดสอบ 3 ข้อ
1. Table.SelectColumns(t, {"จำนวน", "ภูมิภาค"}) ได้คอลัมน์เรียงแบบใด
ลำดับใน list คือลำดับคอลัมน์ของผลลัพธ์
2. ต้นทางเพิ่มคอลัมน์ใหม่ในเดือนหน้า query ที่ใช้ Choose Columns จะเป็นอย่างไร
Choose Columns ระบุคอลัมน์ที่เก็บ คอลัมน์อื่นที่ไม่ได้ระบุจึงไม่ถูกดึงมา
3. ปุ่มใดสร้าง Table.SelectColumns
Remove Other Columns เก็บคอลัมน์ที่เลือกไว้ ลบที่เหลือ
ไฟล์ฝึก Table.SelectColumns
9Expert-M-Table-SelectColumns-Practice-v1.0.xlsx
โจทย์ในชีตแบบฝึกหัด
- ข้อ 1หลัง Removed Other Columns ชื่อคอลัมน์ที่ 2 คืออะไร · ดูที่ขั้น Removed Other Columns
- ข้อ 2ผลรวมคอลัมน์ จำนวน หลังเลือกคอลัมน์ · ดูที่ขั้น Removed Other Columns
- ข้อ 3เลือก {"จำนวน", "ภูมิภาค", "พนักงานขาย"} แล้วชื่อคอลัมน์แรกคืออะไร · ดูที่ขั้น Removed Other Columns
- ข้อ 4เลือก {"ภูมิภาค", "จำนวน"} แล้วตารางมีกี่คอลัมน์ · ดูที่ขั้น Removed Other Columns
- ข้อ 5หลังเลือกคอลัมน์ ค่า ช่องทาง ในแถวแรกคืออะไร · ดูที่ขั้น Removed Other Columns
ไปต่อ
ต่อยอดในหลักสูตร Power BI และ Power Query ของ 9Expert Training: รวมไฟล์ ล้างข้อมูล และสร้างโมเดลสำหรับรายงาน