คลังสูตรExcel 80 · DAX 95 · M 15
ในหน้านี้
หน้าแรก › Power Query › จัดการคอลัมน์ › Table.SelectColumns

Table.SelectColumns

Power Query · Mจัดการคอลัมน์ระดับพื้นฐาน

อัปเดต 3 ต.ค. 2569 · ตารางทุกขั้นในตัวอย่างตรงกับตัวคำนวณอ้างอิงที่เขียนแยก · ยังไม่ได้ตรวจใน Power Query ของ Excel หรือ Power BI Desktop

เอกสารอ้างอิง: Table.SelectColumns (Microsoft Learn) · ตัวจำลองบนหน้านี้รองรับเฉพาะฟังก์ชันและรูปแบบที่ใช้ในตัวอย่าง วันที่แสดงแบบ วัน/เดือน/ปี ค.ศ.

Table.SelectColumns คืออะไร

เลือกเฉพาะคอลัมน์ที่ต้องการ คอลัมน์อื่นหายไป และคอลัมน์เรียงตามลำดับใน list

ปุ่มใน Power Query Editor ที่สร้างขั้นนี้Home › Manage Columns › Choose Columns (หรือเลือกคอลัมน์แล้ว Remove Other Columns)

ใช้เมื่อไหร่

  • เก็บเฉพาะคอลัมน์ที่รายงานใช้ เพื่อให้ไฟล์เล็กลง
  • จัดลำดับคอลัมน์ใหม่ไปพร้อมกัน

รูปแบบสูตร

Table.SelectColumns(table as table, columns as any, optional missingField as nullable number) as table

optional คือไม่ใส่ก็ได้ · ชื่อฟังก์ชันต้องสะกดตัวพิมพ์ใหญ่เล็กให้ตรง

Argument แต่ละตัว

ชี้ที่ argument ในรูปแบบสูตรด้านบนเพื่อไฮไลต์แถวนั้น

Argumentจำเป็นไหมความหมาย
tableจำเป็นตารางต้นทาง
columnsจำเป็นชื่อคอลัมน์ หรือ list ชื่อคอลัมน์ที่เก็บไว้ ลำดับใน list คือลำดับคอลัมน์ของผลลัพธ์
missingFieldไม่บังคับทำอย่างไรเมื่อไม่พบคอลัมน์ เช่น MissingField.UseNull ใส่คอลัมน์ว่าง (ไม่ใส่ = ขึ้น Error)

ลองเลย: เก็บเฉพาะคอลัมน์ที่รายงานใช้

คลิกขั้นใน Applied Steps เพื่อดูตารางหลังขั้นนั้น สลับดูก่อนและหลังขั้น เปลี่ยนค่าที่ปุ่มด้านบน หรือแก้สูตรในแถบสูตรแล้วกดคำนวณ

กดใน Power Query EditorHome › Manage Columns › Choose Columns (หรือเลือกคอลัมน์แล้ว Remove Other Columns)
Ctrl + Enter คำนวณ · แก้ได้ทุกขั้น เลือกขั้นจาก Applied Steps
4 คอลัมน์ · 65 แถว
Removed Other Columns · ตารางหลังขั้นนี้ 65 แถว 4 คอลัมน์
แถววันที่100%ABCภูมิภาค100%ABCช่องทาง100%123จำนวน100%
12/1/2025เหนือOnline54
24/1/2025กลางOnline35
35/1/2025กลางOnline38
47/1/2025กลางFood Service20
57/1/2025กลางModern Trade18
68/1/2025ตะวันออกเฉียงเหนือModern Trade21
79/1/2025ตะวันออกModern Trade30
811/1/2025เหนือOnline20
912/1/2025ตะวันออกเฉียงเหนือFood Service15
1013/1/2025เหนือOnline37
1114/1/2025กลางTraditional Trade39
1215/1/2025ตะวันออกเฉียงเหนือOnline24
1316/1/2025ตะวันออกTraditional Trade50
1416/1/2025ใต้Traditional Trade35
1517/1/2025ตะวันออกเฉียงเหนือModern Trade6
1618/1/2025กลางTraditional Trade44
1720/1/2025ใต้Online48
1821/1/2025ใต้Traditional Trade51
1922/1/2025กลางFood Service21
2025/1/2025ใต้Modern Trade20
2126/1/2025ใต้Traditional Trade38
2229/1/2025เหนือModern Trade38
2330/1/2025ใต้Modern Trade16
241/2/2025เหนือTraditional Trade22
253/2/2025เหนือModern Trade18
266/2/2025ตะวันออกเฉียงเหนือOnline7
278/2/2025กลางOnline20
289/2/2025กลางFood Service7
2910/2/2025กลางModern Trade33
3010/2/2025ใต้Modern Trade33
3113/2/2025ตะวันออกเฉียงเหนือTraditional Trade21
3215/2/2025เหนือFood Service43
3316/2/2025กลางOnline28
3419/2/2025กลางOnline10
3519/2/2025กลางOnline19
3620/2/2025ตะวันออกเฉียงเหนือFood Service20
3720/2/2025เหนือModern Trade32
3821/2/2025ตะวันออกเฉียงเหนือModern Trade41
3922/2/2025เหนือModern Trade32
4023/2/2025กลางOnline42

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 อยู่แล้ว

EXCEL=CHOOSECOLS(A2:I66, 2, 5, 6, 7)

CHOOSECOLS ใน Excel 365 เลือกคอลัมน์ด้วยลำดับที่ Power Query เลือกด้วยชื่อ จึงไม่พังเมื่อคอลัมน์ต้นทางสลับตำแหน่ง

POWER QUERY · M#"Removed Other Columns" = Table.SelectColumns(#"Changed Type",{"วันที่", "ภูมิภาค", "ช่องทาง", "จำนวน"})

เลือกเฉพาะคอลัมน์ที่ต้องการ คอลัมน์อื่นหายไป และคอลัมน์เรียงตามลำดับใน list

DAXSELECTCOLUMNS('ยอดขาย', "วันที่", 'ยอดขาย'[วันที่], "จำนวน", 'ยอดขาย'[จำนวน])

SELECTCOLUMNS ใน DAX สร้างตารางในหน่วยความจำระหว่างคำนวณ ส่วน Table.SelectColumns ลดคอลัมน์ก่อนโหลด ทำให้ไฟล์ Power BI เล็กลง

ข้อผิดพลาดและเคล็ดลับ

เลือกด้วย Choose Columns ดีกว่าลบทีละคอลัมน์ ถ้าต้นทางเพิ่มคอลัมน์ใหม่ query นี้จะไม่ดึงคอลัมน์ใหม่มาโดยไม่ตั้งใจ
ลำดับใน list คือลำดับคอลัมน์ของผลลัพธ์ ใช้จัดเรียงคอลัมน์ไปพร้อมกันได้
ลดคอลัมน์ที่ไม่ใช้ตั้งแต่ใน Power Query ทำให้โมเดล Power BI เล็กและเร็วขึ้น

แบบทดสอบ 3 ข้อ

1. Table.SelectColumns(t, {"จำนวน", "ภูมิภาค"}) ได้คอลัมน์เรียงแบบใด

2. ต้นทางเพิ่มคอลัมน์ใหม่ในเดือนหน้า query ที่ใช้ Choose Columns จะเป็นอย่างไร

3. ปุ่มใดสร้าง Table.SelectColumns

ไฟล์ฝึก Table.SelectColumns

9Expert-M-Table-SelectColumns-Practice-v1.0.xlsx

รุ่น 1.0 · 3/10/2026 · 21 KB · ไม่มี Macro · เปิดใน Excel › Data › Get Data › Blank Query แล้ววางโค้ดตั้งต้น ทำโจทย์ พิมพ์คำตอบกลับในไฟล์ ตรวจเอง
เริ่มต้นข้อมูลส่งออกยอดขายเป้าหมายโค้ดตั้งต้นแบบฝึกหัดเฉลย

โจทย์ในชีตแบบฝึกหัด

  1. ข้อ 1หลัง Removed Other Columns ชื่อคอลัมน์ที่ 2 คืออะไร · ดูที่ขั้น Removed Other Columns
  2. ข้อ 2ผลรวมคอลัมน์ จำนวน หลังเลือกคอลัมน์ · ดูที่ขั้น Removed Other Columns
  3. ข้อ 3เลือก {"จำนวน", "ภูมิภาค", "พนักงานขาย"} แล้วชื่อคอลัมน์แรกคืออะไร · ดูที่ขั้น Removed Other Columns
  4. ข้อ 4เลือก {"ภูมิภาค", "จำนวน"} แล้วตารางมีกี่คอลัมน์ · ดูที่ขั้น Removed Other Columns
  5. ข้อ 5หลังเลือกคอลัมน์ ค่า ช่องทาง ในแถวแรกคืออะไร · ดูที่ขั้น Removed Other Columns

ไปต่อ

อยากใช้ Power Query เตรียมข้อมูลจริงทั้งระบบ

ต่อยอดในหลักสูตร Power BI และ Power Query ของ 9Expert Training: รวมไฟล์ ล้างข้อมูล และสร้างโมเดลสำหรับรายงาน

ดูหลักสูตร