---
title: Table.Column – ดึงข้อมูลคอลัมน์จากตาราง
url: https://www.thepexcel.com/functions/power-query/table-functions/table-column/
type: function-explainer
program: Power Query
syntax: "= Table.Column(table as table, columnName as text) as list"
date: 2025-12-03
updated: 2025-12-24
scores:
  popularity: 6
  difficulty: 3
  usefulness: 6
---

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

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

## คำอธิบาย

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

## Syntax

```excel
= Table.Column(table as table, columnName as text) as list
```

## Arguments

| Name | Required | Type | Default | Description |
| --- | --- | --- | --- | --- |
| table | Yes | Table |  | ตารางที่ต้องการดึงคอลัมน์ออกมา |
| columnName | Yes | Text |  | ชื่อของคอลัมน์ที่ต้องการดึงข้อมูล (ต้องจำกัดในเครื่องหมายอัญประลัษณ์) |

## ตัวอย่าง

### 1. ตัวอย่างพื้นฐาน - ดึงคอลัมน์ Name

```excel
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"}`

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

### 2. ดึงข้อมูลตัวเลขเพื่อคำนวณค่าเฉลี่ย

```excel
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`

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

### 3. ดึงคอลัมน์ที่มีชื่อค่อนข้างพิเศษ

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

**ผลลัพธ์:** `{"A", "B"}`

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

### 4. รวมกับ List.Distinct() เพื่อหาค่าที่ไม่ซ้ำ

```excel
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"}`

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

## หมายเหตุเพิ่มเติม

- ใช้ Table.Column เมื่อต้องการข้อมูลเพียงคอลัมน์เดียวและต้องการทำงานกับ List functions

- ชื่อคอลัมน์ต้องตรงกับตัวพิมพ์เล็กใหญ่ (case-sensitive)

- ถ้าชื่อคอลัมน์มีช่องว่างหรืออักขระพิเศษ ให้ใช้ เครื่องหมายอัญประลัษณ์ "#(tab)ชื่อคอลัมน์"

- รวมกับ List.Distinct(), List.Sort(), List.Average() ได้อย่างสะดวก

- ใช้ Table.ColumnNames() หากไม่แน่ใจว่าชื่อคอลัมน์คืออะไร

## คำถามที่พบบ่อย

**Q: Table.Column คืนค่าอะไร?**

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

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

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

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

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

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

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

## แหล่งข้อมูลเพิ่มเติม

- [Microsoft Learn: Table.Column](https://learn.microsoft.com/en-us/powerquery-m/table-column) _(official)_
- [Power Query: List Functions Overview](https://learn.microsoft.com/en-us/powerquery-m/list-functions) _(official)_

---

_Source: [https://www.thepexcel.com/functions/power-query/table-functions/table-column/](https://www.thepexcel.com/functions/power-query/table-functions/table-column/)_
