Thep Excel

Table.Columnดึงข้อมูลคอลัมน์จากตาราง

Table.Column ดึงค่าจากคอลัมน์เฉพาะออกมาจากตาราง และคืนค่าเป็น List เพื่อให้สามารถนำไปประมวลผลต่อได้

fx
= Table.Column(table, columnName) as list

ความนิยม6/10
ความยาก3/10
ประโยชน์6/10

อัปเดต 3 December 2025

Syntax & Arguments

อาร์กิวเมนต์ ชนิด คำอธิบาย
table Table ตารางที่ต้องการดึงคอลัมน์ออกมา
columnName Text ชื่อของคอลัมน์ที่ต้องการดึงข้อมูล (ต้องจำกัดในเครื่องหมายอัญประลัษณ์)

Additional Notes

Table.Column(table, columnName) ใช้สำหรับดึงข้อมูลจากคอลัมน์เดียวของตาราง โดยคืนค่าเป็น List ที่มีข้อมูลทั้งหมดจากคอลัมน์นั้น

ส่วนตัวผมใช้ Table.Column บ่อยมากเวลาต้องการทำงานกับข้อมูลเพียงคอลัมน์เดียว เช่น สร้าง parameter list หรือนำข้อมูลไปใช้กับฟังก์ชัน List อื่นๆ มันสะดวกกว่าการเก็บตารางเต็มๆ เยอะ 😎

ที่เจ๋งคือ Table.Column คืนค่า List ไม่ใช่ Table ดังนั้นคุณสามารถใช้ List.Distinct(), List.Sort() หรือ List.Average() ได้เลยโดยไม่ต้อง convert ยุ่งๆ

Examples

ตัวอย่างพื้นฐาน – ดึงคอลัมน์ Namelet Sales = Table.FromRows( {{1, "Alice", 500}, {2, "Bob", 1200}, {3, "Charlie", 800}}, {"OrderID", "Name", "Amount"} ), Names = Table.Column(Sales, "Name") in…

ดึงคอลัมน์ Name ออกมาจากตาราง Sales และได้ List ของชื่อ

fx
let
Sales = Table.FromRows(
{{1, "Alice", 500}, {2, "Bob", 1200}, {3, "Charlie", 800}},
{"OrderID", "Name", "Amount"}
),
Names = Table.Column(Sales, "Name")
in
Names

ผลลัพธ์{"Alice", "Bob", "Charlie"}
ดึงข้อมูลตัวเลขเพื่อคำนวณค่าเฉลี่ยlet Sales = Table.FromRows( {{1, "Alice", 500}, {2, "Bob", 1200}, {3, "Charlie", 800}}, {"OrderID", "Name", "Amount"} ), Amounts = Table.Column(Sales, "Amount")…

ดึงคอลัมน์ Amount ออกมา แล้วใช้ List.Average() คำนวณค่าเฉลี่ย

fx
let
Sales = Table.FromRows(
{{1, "Alice", 500}, {2, "Bob", 1200}, {3, "Charlie", 800}},
{"OrderID", "Name", "Amount"}
),
Amounts = Table.Column(Sales, "Amount"),
AverageAmount = List.Average(Amounts)
in
AverageAmount

ผลลัพธ์833.33
ดึงคอลัมน์ที่มีชื่อค่อนข้างพิเศษlet Data = Table.FromRows( {{"A", 10}, {"B", 20}}, {"Item#", "Value@USD"} ), Items = Table.Column(Data, "Item#") in Items

เมื่อชื่อคอลัมน์มีอักขระพิเศษ ให้ใส่ชื่อในเครื่องหมายอัญประลัษณ์ ""

fx
let
Data = Table.FromRows(
{{"A", 10}, {"B", 20}},
{"Item#", "Value@USD"}
),
Items = Table.Column(Data, "Item#")
in
Items

ผลลัพธ์{"A", "B"}
รวมกับ List.Distinct() เพื่อหาค่าที่ไม่ซ้ำlet Sales = Table.FromRows( {{1, "Bangkok"}, {2, "Bangkok"}, {3, "Phuket"}}, {"OrderID", "City"} ), Cities = Table.Column(Sales, "City"), UniqueCities = List.Di…

ดึงคอลัมน์ City แล้วใช้ List.Distinct() กรองออกค่าที่ซ้ำกัน

fx
let
Sales = Table.FromRows(
{{1, "Bangkok"}, {2, "Bangkok"}, {3, "Phuket"}},
{"OrderID", "City"}
),
Cities = Table.Column(Sales, "City"),
UniqueCities = List.Distinct(Cities)
in
UniqueCities

ผลลัพธ์{"Bangkok", "Phuket"}

FAQs

Table.Column คืนค่าอะไร?+

คืนค่า List (รายการ) ไม่ใช่ Table ซึ่งทำให้สามารถใช้ฟังก์ชัน List ได้โดยตรง

เกิดอะไรขึ้นถ้าชื่อคอลัมน์ไม่พบ?+

Power Query จะแสดง error "The column 'ชื่อคอลัมน์' of the table is not found" ตรวจสอบสะกด

สามารถดึงหลายคอลัมน์พร้อมกันได้ไหม?+

ไม่ Table.Column ดึงเพียงคอลัมน์เดียวเท่านั้น ถ้าต้องหลายคอลัมน์ใช้ Table.SelectColumns() แทน

ความแตกต่างระหว่าง Table.Column กับ Table.SelectColumns คืออะไร?+

Table.Column คืน List (ข้อมูลเพียงคอลัมน์เดียว) แต่ Table.SelectColumns คืน Table (ยังคงเป็นตาราง)

Resources & Related

ฟังก์ชันที่ผู้เขียนโยงไว้กับ Table.Column จัดกลุ่มตามหมวด · ชี้ที่ชื่อใดชื่อหนึ่ง แล้วฟังก์ชันที่ใช้คู่กันจะมีจุดทอง

ฟังก์ชันนี้Table.ColumnTable functions
Table functions (4)
Table.ColumnNames

Table.ColumnNames ดึงชื่อคอลัมน์ทั้งหมดจากตาราง และส่งกลับมาเป็นลิสต์ข้อความ ซึ่งจำเป็นสำหรับการตรวจสอบ schema แบบ dynamic

Table.ColumnNames

Table.ColumnNames ดึงชื่อคอลัมน์ทั้งหมดจากตารางและคืนค่าเป็นลิสต์ของข้อความ เหมาะสำหรับการทำงานแบบไดนามิกกับโครงสร้างตารางที่ไม่แน่นอน

Table.FromRecords

แปลง List ของ Record เป็นตาราง โดยแต่ละ Record กลายเป็นหนึ่งแถว เหมาะสำหรับข้อมูลจาก API หรือ JSON

Table.SelectColumns

Table.SelectColumns ใช้สำหรับเลือกคอลัมน์เฉพาะจากตารางและสร้างตารางใหม่ที่มีเฉพาะคอลัมน์เหล่านั้น

List functions (2)
List.Average

List.Average คำนวณค่าเฉลี่ยของตัวเลข วันที่ เวลา หรือระยะเวลาในรายการ ฟังก์ชันนี้เป็นตัวช่วยแรกที่ผมใช้ทุกครั้งที่ต้องการวิเคราะห์ค่าเฉลี่ยจากชุดข้อมูลใดๆ

List.Distinct

List.Distinct จะคืน List ใหม่ที่ไม่มีค่าซ้ำกัน โดยเก็บสมาชิกตัวแรกที่พบไว้ และทิ้งตัวที่ซ้ำกันทิ้งไป สามารถกำหนด Comparer เพื่อใช้ Logic การเปรียบเทียบที่แตกต่างกันได้ เช่น ไม่สนใจตัวพิมพ์เล็ก/ใหญ่

Comments

อีเมลของคุณจะไม่ถูกเผยแพร่