---
title: SORT – ฟังก์ชันเรียงลำดับแบบสไปล์
url: https://www.thepexcel.com/functions/excel/lookup-and-reference/sort/
type: function-explainer
program: Excel
syntax: "=SORT(array, [sort_index], [sort_order], [by_col])"
date: 2025-12-14
updated: 2025-12-17
scores:
  popularity: 8
  difficulty: 4
  usefulness: 9
---

# SORT – ฟังก์ชันเรียงลำดับแบบสไปล์

> เรียงลำดับข้อมูลเป็น Spill Range ใหม่

## คำอธิบาย

SORT เป็น Dynamic Array Function ที่เรียงลำดับข้อมูลจาก Array แล้ว return เป็น Spill Range ใหม่โดยไม่แก้ไขข้อมูลต้นฉบับ รองรับการเรียงตามคอลัมน์ที่ต้องการ (sort_index) ทั้งจากน้อยไปมาก (1) และมากไปน้อย (-1) รวมถึงเรียงแนวนอน (by_col=TRUE) ต่างจาก SORTBY ที่ใช้คอลัมน์ภายนอกเป็นเกณฑ์

## Syntax

```excel
=SORT(array, [sort_index], [sort_order], [by_col])
```

**excel**

```excel
=SORT(Table1[Name])
```

เรียง A-Z คอลัมน์เดียว (ค่าเริ่มต้น)

**excel**

```excel
=SORT(Table1, 3, -1)
```

เรียงตามคอลัมน์ที่ 3 จากมากไปน้อย

**excel**

```excel
=SORT(FILTER(Table1, Table1[Status]="Active"), 2, 1)
```

FILTER + SORT กรองแล้วเรียง

**excel**

```excel
=SORT(UNIQUE(Table1[Category]))
```

UNIQUE + SORT รายการที่ไม่ซ้ำเรียง A-Z

## Arguments

| Name | Required | Type | Default | Description |
| --- | --- | --- | --- | --- |
| array | Yes | Range/Array |  | ช่วงข้อมูลหรือ Array ที่ต้องการเรียงลำดับ |
| sort_index | No | Number/Array | 1 | เลขคอลัมน์ที่ใช้เรียง (1=คอลัมน์แรก) หรือ Array สำหรับ multi-level sort |
| sort_order | No | Number/Array | 1 | 1 = น้อยไปมาก (A-Z), -1 = มากไปน้อย (Z-A) หรือ Array สำหรับ multi-level |
| by_col | No | Boolean | FALSE | FALSE = เรียงตามแถว (แนวตั้ง ค่าเริ่มต้น), TRUE = เรียงตามคอลัมน์ (แนวนอน) |

## เคสการใช้งาน

### จัดอันดับยอดขาย

เรียงยอดขายจากมากไปน้อยเพื่อหาท็อปเซลล์

_เหมาะกับ:_ data-analysis

### เตรียมข้อมูลก่อน UNIQUE

เรียงข้อมูลก่อนส่งให้ UNIQUE เพื่อให้ผลลัพธ์ดูเป็นระเบียบ

_เหมาะกับ:_ data-cleaning

### เรียงตารางที่กรองแล้ว

ใช้ SORT คร่อม FILTER เพื่อเรียงผลลัพธ์ที่กรองแล้ว

_เหมาะกับ:_ dashboard

## ตัวอย่าง

### 1. ตัวอย่างที่ 1: เรียง A-Z (ค่าเริ่มต้น)

```excel
=SORT(Products[Name])
```

**ผลลัพธ์:** `{"Apple"; "Banana"; "Cherry"; "Date"}`

เรียงคอลัมน์ Name จากน้อยไปมาก (A-Z) โดยใช้ค่าเริ่มต้น sort_order=1

### 2. ตัวอย่างที่ 2: เรียงตัวเลขจากมากไปน้อย

```excel
=SORT(Sales[Amount], 1, -1)
```

**ผลลัพธ์:** `{5000; 3500; 2800; 1200; 500}`

sort_order=-1 เรียงจากมากไปน้อย ได้ยอดขายสูงสุดอยู่บนสุด

### 3. ตัวอย่างที่ 3: เรียงตารางตามคอลัมน์ที่ 3

```excel
=SORT(Employees, 3, -1)
```

**ผลลัพธ์:** `ตารางเรียงตามเงินเดือน (คอลัมน์ 3) มากไปน้อย`

sort_index=3 ระบุคอลัมน์ที่ใช้เรียง (เงินเดือน) เรียงทั้งตารางโดย keep ทุกคอลัมน์

### 4. ตัวอย่างที่ 4: Multi-Level Sort (2 ระดับ)

```excel
=SORT(Sales, {1,3}, {1,-1})
```

**ผลลัพธ์:** `เรียง Region A-Z แล้ว Amount มาก→น้อย`

ใช้ Array: {1,3} = เรียงคอลัมน์ 1 แล้ว 3, {1,-1} = คอลัมน์ 1 A-Z, คอลัมน์ 3 มากไปน้อย

### 5. ตัวอย่างที่ 5: FILTER + SORT

```excel
=SORT(FILTER(Orders, Orders[Status]="Pending"), 2, -1)
```

**ผลลัพธ์:** `Orders ที่ Pending เรียงตามคอลัมน์ 2`

กรอง Status=Pending ก่อน แล้ว SORT ตามคอลัมน์ที่ 2 (วันที่) จากมากไปน้อย

### 6. ตัวอย่างที่ 6: SORT + INDEX ดึง Top N

```excel
=INDEX(SORT(Products, 2, -1), SEQUENCE(5), {1,2})
```

**ผลลัพธ์:** `Top 5 สินค้าขายดี (2 คอลัมน์)`

SORT เรียงตามคอลัมน์ 2 (ยอดขาย) มากไปน้อย INDEX+SEQUENCE ดึง 5 แถวแรก (Top 5)

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

**เปรียบเทียบ SORT vs SORTBY:**\n\n| | SORT | SORTBY |\n|---|------|--------|\n| เกณฑ์เรียง | คอลัมน์ภายใน array | Array ภายนอกได้ |\n| ระบุคอลัมน์ | เลขคอลัมน์ (1,2,3) | Range/Array |\n| Custom order | ทำยาก | ง่าย (XMATCH) |\n| Multi-level | ได้ (Array) | ได้ (คู่ array,order) |\n\n**Pattern การใช้งาน:**\n```\n=SORT(Data)                    → เรียง A-Z (ค่าเริ่มต้น)\n=SORT(Data, 1, -1)             → เรียง Z-A\n=SORT(Data, 2, -1)             → เรียงตามคอลัมน์ที่ 2 มากไปน้อย\n=SORT(Data, {1,2}, {1,-1})     → Multi-level sort\n=SORT(FILTER(...))             → กรองแล้วเรียง\n=SORT(UNIQUE(...))             → หาไม่ซ้ำแล้วเรียง\n```\n\n**Tips:**\n- sort_order: 1 = A-Z (น้อยไปมาก), -1 = Z-A (มากไปน้อย)\n- Multi-level ใช้ Array: {1,3} และ {1,-1}\n- ใช้กับ FILTER, UNIQUE ได้ดี\n- by_col=TRUE สำหรับข้อมูลแนวนอน (หายาก)

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

**Q: SORT ต่างจากการ Sort ในเมนูอย่างไร?**

SORT เป็นสูตรที่ return Spill Range ใหม่ ไม่แก้ไขข้อมูลต้นฉบับ และอัปเดตอัตโนมัติ ส่วนการ Sort ในเมนูจัดเรียงข้อมูลจริงในตาราง

**Q: SORT ต่างจาก SORTBY อย่างไร?**

SORT เรียงตามคอลัมน์ภายใน array (ระบุเป็นเลขคอลัมน์ 1,2,3) ส่วน SORTBY เรียงตาม Array ภายนอกได้ และทำ custom sort order ด้วย XMATCH

**Q: ทำ Multi-Level Sort ได้ไหม?**

ได้ ใช้ Array สำหรับ sort_index และ sort_order เช่น =SORT(Data, {1,3}, {1,-1}) เรียงคอลัมน์ 1 ก่อน (A-Z) แล้วคอลัมน์ 3 (มากไปน้อย)

**Q: #SPILL! error เกิดจากอะไร?**

เกิดเมื่อเซลล์ด้านล่างไม่ว่าง ทำให้ผลลัพธ์ Spill ไม่ได้ ลบข้อมูลที่ขวางหรือย้ายสูตรไปที่ว่าง

**Q: SORT รองรับ Excel เวอร์ชันไหน?**

Microsoft 365, Excel 2021, Excel 2024, และ Excel for Web เป็น Dynamic Array Function ไม่รองรับ Excel 2019 หรือเก่ากว่า

## ฟังก์ชันที่เกี่ยวข้อง

- [SORTBY – เรียงลำดับข้อมูลตามคอลัมน์อื่น](https://www.thepexcel.com/functions/excel/lookup-and-reference/sortby/)
- [FILTER – ฟังก์ชันกรองข้อมูลแบบไดนามิก](https://www.thepexcel.com/functions/excel/lookup-and-reference/filter/)
- [UNIQUE – ฟังก์ชันดึงค่าที่ไม่ซ้ำ](https://www.thepexcel.com/functions/excel/lookup-and-reference/unique/)
- [TAKE – ดึงข้อมูลบางส่วนจากหัวหรือท้ายตาราง](https://www.thepexcel.com/functions/excel/lookup-and-reference/take/)
- [DROP – ตัดข้อมูลบางส่วนทิ้ง (หัวหรือท้าย)](https://www.thepexcel.com/functions/excel/lookup-and-reference/drop/)
- [INDEX – ดึงค่าจากตำแหน่งที่ระบุใน Range หรือ Array](https://www.thepexcel.com/functions/excel/lookup-and-reference/index/)
- [SEQUENCE – สร้างตารางตัวเลขเรียงลำดับแบบ Dynamic Array](https://www.thepexcel.com/functions/excel/math-and-trigonometry/sequence/)

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

- [Microsoft Support: SORT function](https://support.microsoft.com/en-us/office/sort-function-22f63bd0-ccc8-492f-953d-c20e1f1d1a5b) _(official)_
- [ExcelJet: How to use SORT](https://exceljet.net/excel-functions/excel-sort-function) _(guide)_

---

_Source: [https://www.thepexcel.com/functions/excel/lookup-and-reference/sort/](https://www.thepexcel.com/functions/excel/lookup-and-reference/sort/)_
