Trong môi trường làm việc hiện đại, việc xử lý và phân tích dữ liệu là một kỹ năng không thể thiếu, đặc biệt là với những người thường xuyên làm việc với Microsoft Excel. Một trong những thao tác cơ bản nhưng vô cùng quan trọng là sắp xếp (sort) dữ liệu. Khi dữ liệu của bạn bao gồm nhiều cột, việc sắp xếp chỉ dựa trên một cột duy nhất thường không đáp ứng được nhu cầu phân tích sâu hơn. Vì vậy, khả năng sắp xếp theo 2 cột (hoặc nhiều hơn) trở nên cần thiết để chúng ta có thể:
- Nhóm dữ liệu theo một tiêu chí chính, sau đó sắp xếp chi tiết hơn dựa trên tiêu chí phụ.
- Tạo ra các báo cáo, danh sách hoặc bảng tổng hợp có thứ tự logic, dễ đọc và dễ hiểu.
- Chuẩn bị dữ liệu cho các bước phân tích tiếp theo như lọc, pivot table, hoặc biểu đồ.
Bài viết này sẽ cung cấp cho bạn một hướng dẫn chi tiết, đầy đủ các bước, mẹo và lưu ý khi thực hiện Excel sort by 2 columns. Nội dung được chia thành các phần chính:
- Hiểu cơ bản về sắp xếp trong Excel
- Chuẩn bị dữ liệu trước khi sắp xếp
- Cách sắp xếp nhanh bằng tính năng Sort (Data Tab)
- Sắp xếp bằng Custom Sort – Đặt thứ tự tùy chỉnh cho 2 cột
- Sử dụng hàm SORT (Excel 365/2026) để sắp xếp đa cột trong công thức
- Sắp xếp bằng VBA – Tự động hoá quy trình
- Một số ví dụ thực tế và bài tập thực hành
- Các lỗi thường gặp và cách khắc phục
- Mẹo nâng cao: Sắp xếp dựa trên nhiều tiêu chí, sắp xếp ngược, và sắp xếp theo màu
Mỗi phần sẽ được trình bày chi tiết, kèm theo hình ảnh mô tả (nếu có) và các lưu ý quan trọng để bạn có thể áp dụng ngay vào công việc của mình. Hãy cùng bắt đầu khám phá!
Có thể bạn quan tâm: Excel Hiển Thị Công Thức Thay Vì Kết Quả: Nguyên Nhân, Giải Pháp Và Cách Khắc Phục
1. Hiểu Cơ Bản Về Sắp Xếp Trong Excel
1.1. Sắp xếp là gì?
Sắp xếp trong Excel là quá trình định vị lại các hàng dựa trên giá trị của một hoặc nhiều cột, theo thứ tự tăng dần (A → Z, 0 → 9) hoặc giảm dần (Z → A, 9 → 0). Khi sắp xếp, Excel sẽ di chuyển toàn bộ nội dung của mỗi hàng để giữ nguyên mối quan hệ giữa các cột.
1.2. Tại sao cần sắp xếp theo 2 cột?
- Phân cấp dữ liệu: Ví dụ, bạn muốn nhóm các đơn hàng theo Tên khách hàng (cột 1) và trong mỗi khách hàng, sắp xếp các đơn hàng theo Ngày giao (cột 2).
- Tìm kiếm nhanh: Khi dữ liệu đã được sắp xếp đúng thứ tự, việc tìm kiếm thông tin bằng cách cuộn hoặc dùng công cụ Find trở nên nhanh hơn.
- Chuẩn bị cho Pivot Table: Pivot Table hoạt động tốt hơn khi dữ liệu đã được sắp xếp logic.
1.3. Các loại sắp xếp
| Loại sắp xếp | Mô tả | Khi nào dùng |
|---|---|---|
| Sort A‑Z / Z‑A | Sắp xếp đơn giản theo một cột | Khi chỉ cần một tiêu chí chính |
| Custom Sort | Cho phép đặt nhiều cấp độ (cột) và lựa chọn thứ tự tăng/giảm | Khi cần sắp xếp theo 2 hoặc nhiều cột |
| SORT Function | Hàm mảng mới, trả về dữ liệu đã sắp xếp | Excel 365/2026, muốn tạo bảng động |
| VBA Sort | Lập trình tự động hoá quá trình sắp xếp | Khi cần thực hiện lặp lại nhiều lần hoặc trên nhiều sheet |
Có thể bạn quan tâm: Giới Thiệu Chi Tiết Về Độ Dài Tối Đa Của Tên Sheet Trong Microsoft Excel
2. Chuẩn Bị Dữ Liệu Trước Khi Sắp Xếp
2.1. Kiểm tra tiêu đề (Header)
- Đảm bảo dòng đầu tiên là tiêu đề của mỗi cột (ví dụ:
Tên khách hàng,Ngày giao,Số lượng). - Khi sử dụng tính năng Sort, hãy bật tùy chọn “My data has headers” để Excel không tính tiêu đề là dữ liệu.
2.2. Loại bỏ dữ liệu trống và lỗi
- Kiểm tra ô trống trong cột sắp xếp chính (cột 1). Nếu có, Excel sẽ đưa chúng lên đầu hoặc cuối tùy vào thứ tự sắp xếp, gây lỗi logic.
- Dùng
Go To Special→Blanksđể nhanh chóng tìm và xử lý các ô trống.
2.3. Định dạng dữ liệu đồng nhất
- Ngày tháng: Đảm bảo cột ngày được định dạng là
Date. Nếu có ô dạng văn bản, Excel sẽ sắp xếp dựa trên chuỗi ký tự, dẫn đến kết quả sai. - Số: Đảm bảo cột số được định dạng là
NumberhoặcCurrency. - Văn bản: Loại bỏ khoảng trắng thừa (
TRIM) và chuẩn hoá chữ hoa/thường (UPPER,LOWER) nếu cần.
2.4. Thiết lập vùng dữ liệu
- Nếu dữ liệu không liền kề (có cột không liên quan ở giữa), bạn có thể chọn vùng dữ liệu cụ thể trước khi sắp xếp hoặc tạo một Table (Insert → Table) để Excel tự động nhận diện vùng.
Có thể bạn quan tâm: Excel Scrolling Với Các Phím Mũi Tên: Kỹ Năng Cần Thiết Để Tăng Năng Suất Làm Việc
3. Cách Sắp Xếp Nhanh Bằng Tính Năng Sort (Data Tab)
3.1. Bước 1: Chọn vùng dữ liệu
- Di chuột để chọn toàn bộ bảng (hoặc chỉ các cột bạn muốn sắp xếp). Nếu bảng có tiêu đề, hãy chắc chắn tiêu đề nằm trong vùng chọn.
3.2. Bước 2: Mở cửa sổ Sort
- Vào Data → Sort (hoặc nhấn
Alt + D + S). - Hộp thoại Sort sẽ hiện ra.
3.3. Bước 3: Đặt tiêu chí sắp xếp đầu tiên
- Trong phần Column, chọn cột đầu tiên (ví dụ:
Tên khách hàng). - Sort On: thường để mặc định là
Values. - Order: chọn
A to Z(tăng dần) hoặcZ to A(giảm dần) tùy nhu cầu.
3.4. Bước 4: Thêm cấp độ (Level) thứ hai
- Nhấn Add Level.
- Lại chọn Column là cột thứ hai (ví dụ:
Ngày giao). - Đặt Order (tăng dần hoặc giảm dần).
- Lưu ý: Thứ tự các Level quyết định thứ tự ưu tiên. Level 1 sẽ được áp dụng trước, sau đó Level 2 sẽ sắp xếp lại trong mỗi nhóm của Level 1.
3.5. Bước 5: Xác nhận và hoàn thành
- Kiểm tra lại My data has headers đã được tick.
- Nhấn OK. Excel sẽ thực hiện sắp xếp và hiển thị kết quả ngay lập tức.
3.6. Thực hành nhanh
| Tên khách hàng | Ngày giao | Số lượng |
|---|---|---|
| An | 2026‑01‑05 | 10 |
| Binh | 2026‑01‑03 | 5 |
| An | 2026‑01‑02 | 8 |
| Cường | 2026‑01‑04 | 12 |
Sau khi Sort: Level 1 = Tên khách hàng (A‑Z), Level 2 = Ngày giao (A‑Z), bảng sẽ trở thành:
| Tên khách hàng | Ngày giao | Số lượng |
|---|---|---|
| An | 2026‑01‑02 | 8 |
| An | 2026‑01‑05 | 10 |
| Binh | 2026‑01‑03 | 5 |
| Cường | 2026‑01‑04 | 12 |
4. Custom Sort – Đặt Thứ Tự Tùy Chỉnh Cho 2 Cột
4.1. Khi nào dùng Custom Sort?
- Khi bạn muốn sắp xếp theo một danh sách tùy chỉnh (ví dụ: thứ tự ngày trong tuần: Thứ Hai, Thứ Ba, …) hoặc sắp xếp theo màu nền, biểu tượng.
4.2. Thực hiện Custom Sort
- Mở Sort như trong phần 3.2.
- Trong Order, chọn Custom List….
- Trong Custom Lists, nhập danh sách bạn muốn (ví dụ:
Thứ Hai, Thứ Ba, Thứ Tư, Thứ Năm, Thứ Sáu). - Nhấn Add → OK.
- Áp dụng danh sách này cho cột cần sắp xếp (có thể là cột thứ nhất hoặc thứ hai).
4.3. Ví dụ thực tế
Bạn có bảng Lịch làm việc với cột Ngày trong tuần và Ca làm. Muốn sắp xếp ngày thứ Hai trước Thứ Ba, … và trong mỗi ngày, sắp xếp ca làm từ Sáng → Chiều → Tối. Thực hiện:
- Level 1:
Ngày trong tuần→ Order = Custom List (Thứ Hai → Thứ Ba → …). - Level 2:
Ca làm→ Order = Custom List (Sáng → Chiều → Tối).
Kết quả: Dữ liệu sẽ hiển thị theo thứ tự logic của lịch.
5. Sử Dụng Hàm SORT (Excel 365/2026) Để Sắp Xếp Đa Cột Trong Công Thức
5.1. Giới thiệu hàm SORT

Có thể bạn quan tâm: Excel Skills For Business Essentials: Nâng Cao Năng Lực Phân Tích Và Quản Lý Dữ Liệu Trong Doanh Nghiệp
Hàm SORT là một hàm mảng động cho phép bạn trả về một bảng dữ liệu đã được sắp xếp mà không thay đổi dữ liệu gốc. Cú pháp:
=SORT(array, sort_index, sort_order, by_col)
array: Vùng dữ liệu cần sắp xếp.sort_index: Số thứ tự cột (hoặc hàng) dùng làm tiêu chí sắp xếp.sort_order: 1 = tăng dần, -1 = giảm dần.by_col: FALSE (mặc định) sắp xếp theo hàng, TRUE sắp xếp theo cột.
5.2. Sắp xếp theo 2 cột
Bạn có thể lồng hàm SORT hoặc dùng SORTBY (cũng là hàm mới). Dưới đây là 2 cách:
Cách 1: Dùng SORT lồng nhau
Giả sử dữ liệu nằm ở A2:C100 (cột A = Tên, B = Ngày, C = Số lượng). Muốn sắp xếp:
1. Đầu tiên theo Tên (cột 1) tăng dần.
2. Sau đó trong mỗi nhóm Tên, sắp xếp theo Ngày (cột 2) giảm dần.
=SORT( SORT(A2:C100, 2, -1), // Sắp xếp theo ngày giảm dần 1, 1) // Sau đó sắp xếp kết quả theo tên tăng dần
Cách 2: Dùng SORTBY
SORTBY cho phép chỉ định nhiều tiêu chí trong một công thức:
=SORTBY(A2:C100, A2:A100, 1, B2:B100, -1)
A2:A100, 1→ sắp xếp cột Tên tăng dần.B2:B100, -1→ sắp xếp cột Ngày giảm dần trong mỗi nhóm.
5.3. Ưu điểm của hàm mảng
- Không thay đổi dữ liệu gốc – dữ liệu gốc vẫn ở vị trí ban đầu.
- Tự động cập nhật khi dữ liệu nguồn thay đổi.
- Dễ dàng nhúng vào Dashboard: Bạn có thể tạo một bảng tóm tắt động chỉ bằng một công thức.
5.4. Lưu ý khi dùng hàm SORT
- Đảm bảo công thức được đặt ở ô trống và đủ chỗ để hiển thị toàn bộ kết quả (Excel sẽ “spill” dữ liệu).
- Nếu có ô trống trong cột sắp xếp, hàm sẽ đưa chúng lên đầu (đối với tăng dần) – có thể cần dùng
IFERRORhoặcFILTERđể loại bỏ.
6. Sắp Xếp Bằng VBA – Tự Động Hoá Quy Trình
6.1. Khi nào nên dùng VBA?
- Khi cần lặp lại sắp xếp trên nhiều sheet hoặc nhiều tệp.
- Khi muốn kết hợp sắp xếp với các thao tác khác (xóa dòng trùng, tạo báo cáo).
- Khi người dùng không quen với giao diện, bạn có thể gán macro vào nút để thực hiện nhanh.
6.2. Mã VBA cơ bản cho sắp xếp 2 cột
Sub SortTwoColumns() Dim ws As Worksheet Set ws = ThisWorkbook.Sheets("Dulieu") ' Đổi tên sheet phù hợp With ws.Sort .SortFields.Clear ' Level 1: Cột A (Tên khách hàng) tăng dần .SortFields.Add Key:=ws.Range("A2:A" & ws.Cells(ws.Rows.Count, "A").End(xlUp).Row) _ , SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal ' Level 2: Cột B (Ngày giao) giảm dần .SortFields.Add Key:=ws.Range("B2:B" & ws.Cells(ws.Rows.Count, "B").End(xlUp).Row) _ , SortOn:=xlSortOnValues, Order:=xlDescending, DataOption:=xlSortNormal .SetRange ws.Range("A1").CurrentRegion ' Toàn bộ bảng .Header = xlYes .MatchCase = False .Orientation = xlTopToBottom .Apply End With
End Sub
Giải thích mã:
ws.Range("A2:A" & ws.Cells(ws.Rows.Count, "A").End(xlUp).Row)tự động xác định độ dài cột A tới dòng cuối cùng có dữ liệu..SortFields.Addthêm các cấp độ sắp xếp (Level 1, Level 2)..SetRangexác định vùng dữ liệu cần sắp xếp (có thể thay bằngws.Range("A1:C100"))..Header = xlYesthông báo rằng dòng đầu là tiêu đề.
6.3. Gán Macro vào nút
- Insert → Shapes → Rectangle (hoặc bất kỳ hình nào).
- Nhấp chuột phải → Assign Macro… → Chọn
SortTwoColumns. - Đặt tên nút “Sắp xếp dữ liệu”.
6.4. Mở rộng: Sắp xếp theo 3 cột hoặc thêm điều kiện
Bạn chỉ cần thêm .SortFields.Add cho cột thứ ba và thay đổi Order tùy ý. Ví dụ:
' Level 3: Cột C (Số lượng) giảm dần
.SortFields.Add Key:=ws.Range("C2:C" & lastRow), _ SortOn:=xlSortOnValues, Order:=xlDescending, DataOption:=xlSortNormal
7. Ví Dụ Thực Tế Và Bài Tập Thực Hành
7.1. Ví dụ 1: Danh sách bán hàng
Bảng dữ liệu (cột A = Nhân viên, B = Ngày bán, C = Doanh thu).
Mục tiêu: Sắp xếp theo Nhân viên (A‑Z), sau đó Ngày bán (mới nhất → cũ nhất).
Cách thực hiện:
– Quick Sort: Data → Sort → Level 1: Nhân viên (A‑Z) → Add Level → Ngày bán (Z‑A).
– Công thức: =SORTBY(A2:C500, A2:A500, 1, B2:B500, -1).
– Macro: Thêm Level cho cột B với Order:=xlDescending.
7.2. Ví dụ 2: Lịch học
Cột A = Lớp, B = Ngày trong tuần, C = Tiết.
Mục tiêu: Sắp xếp lớp (A‑Z), trong mỗi lớp sắp xếp ngày tuần theo thứ tự thực (Thứ Hai → Thứ Bảy), và trong mỗi ngày sắp xếp tiết (1 → 5).
Custom List:
– Tạo danh sách Thứ Hai, Thứ Ba, Thứ Tư, Thứ Năm, Thứ Sáu, Thứ Bảy.
– Thêm 3 Level trong Custom Sort: Lớp → Ngày trong tuần (Custom List) → Tiết (A‑Z).
7.3. Bài tập tự luyện
- Bài 1: Tạo bảng “Chi phí dự án” với các cột
Dự án,Ngày,Chi phí. Sắp xếp dự án A‑Z, ngày mới nhất lên đầu, chi phí giảm dần trong mỗi ngày. - Bài 2: Sử dụng hàm
SORTBYđể tạo một bảng “Kết quả thi” (cộtTên,Môn,Điểm). Sắp xếp theoTên(A‑Z) và trong mỗi tên sắp xếpĐiểmgiảm dần. - Bài 3: Viết macro VBA sắp xếp sheet “Bảng chấm công” theo
Tên nhân viên→Tháng→Ngày. Kiểm tra tính năng tự động cập nhật khi thêm dữ liệu mới.
8. Các Lỗi Thường Gặp Khi Sắp Xếp Và Cách Khắc Phục
| Lỗi | Nguyên nhân | Cách khắc phục |
|---|---|---|
| Dữ liệu không sắp xếp đúng thứ tự | Cột chứa dữ liệu định dạng không đồng nhất (ví dụ: ngày dưới dạng văn bản) | Định dạng lại cột (Data → Text to Columns → Date) hoặc dùng DATEVALUE. |
| Các hàng bị tách rời, một số hàng không di chuyển | Không chọn toàn bộ vùng hoặc có cột trống giữa các cột dữ liệu | Chọn toàn bộ bảng hoặc chuyển bảng thành Table (Ctrl + T). |
| Khi sắp xếp, tiêu đề bị di chuyển | Bỏ tick My data has headers | Đánh dấu lại tùy chọn này. |
| Sắp xếp không thay đổi khi có công thức tham chiếu tới các ô ngoài vùng | Công thức cố định ($A$1) không di chuyển | Kiểm tra và sử dụng địa chỉ tương đối hoặc INDIRECT khi cần. |
Khi dùng hàm SORT, lỗi #SPILL! | Vùng đích không đủ chỗ để “spill” dữ liệu | Xóa hoặc di chuyển các ô chặn, hoặc dùng @ để trả về một giá trị duy nhất. |
9. Mẹo Nâng Cao: Sắp Xếp Nhiều Tiêu Chí, Sắp Xếp Ngược, Và Sắp Xếp Theo Màu
9.1. Sắp xếp theo màu nền hoặc màu font
- Data → Sort → Add Level.
- Trong Sort On, chọn Cell Color hoặc Font Color.
- Chọn màu muốn đưa lên đầu (hoặc cuối) và xác định thứ tự.
9.2. Sắp xếp ngược (Reverse Order) nhanh
- Tạo cột phụ trợ: Thêm cột mới, nhập công thức
=ROW()và sắp xếp theo cột này giảm dần để đảo ngược toàn bộ bảng. - Hoặc dùng Sort → Options → Sort left to right → Đảo ngược thứ tự cột nếu cần.
9.3. Sắp xếp đa tiêu chí trong Pivot Table
- Khi tạo Pivot, kéo trường vào Rows theo thứ tự mong muốn. Pivot tự động sắp xếp theo thứ tự cấp độ.
- Để thay đổi thứ tự, click chuột phải vào trường trong Pivot → Sort → More Sort Options → Manual hoặc Sort A‑Z.
9.4. Sử dụng Power Query để sắp xếp trước khi tải vào Excel
- Vào Data → Get Data → From Table/Range.
- Trong Power Query Editor, chọn cột cần sắp xếp → Sort Ascending/Descending.
- Thêm cấp độ sắp xếp bằng cách Shift‑click các cột và lựa chọn Sort lần lượt.
- Nhấn Close & Load để đưa dữ liệu đã sắp xếp vào sheet.
Power Query rất mạnh khi làm việc với dữ liệu lớn hoặc khi cần tự động hoá quy trình ETL (Extract, Transform, Load).
Kết Luận
Việc sắp xếp dữ liệu theo 2 cột trong Excel không chỉ giúp bạn tổ chức thông tin một cách logic mà còn là nền tảng cho các phân tích sâu hơn như Pivot Table, biểu đồ, và báo cáo tự động. Từ cách thực hiện nhanh qua giao diện Data → Sort, đến việc sử dụng Custom Sort, hàm SORT/SORTBY, và VBA, bạn có rất nhiều công cụ để đáp ứng mọi nhu cầu:
- Dành cho người mới: Sử dụng giao diện Sort với Add Level.
- Cần tùy chỉnh nâng cao: Custom List, sắp xếp theo màu, hoặc Power Query.
- Làm việc với dữ liệu động: Hàm
SORTBYtrong Excel 365/2026. - Tự động hoá: Macro VBA hoặc Power Automate.
Hãy áp dụng những kiến thức trong bài viết này vào các dự án thực tế của bạn. Khi dữ liệu được sắp xếp một cách hợp lý, không chỉ thời gian xử lý giảm mà độ chính xác và tính chuyên nghiệp của báo cáo cũng được nâng cao đáng kể. Chúc bạn thành công trong việc khai thác tối đa sức mạnh của Excel!

Tiến sĩ Lê Thống Nhất sinh năm 1955 tại Nghệ An, là nhà giáo, nhà báo và doanh nhân trong lĩnh vực giáo dục. Ông từng giảng dạy Toán học tại Trường THPT Chuyên Phan Bội Châu và đảm nhiệm nhiều vai trò trong ngành giáo dục, từ viết sách, biên soạn tài liệu đến sáng lập các dự án hỗ trợ học tập trực tuyến.
Ông là người sáng lập BigSchool – nền tảng giáo dục trực tuyến kết nối giáo viên và học sinh cả nước. Ngoài ra, ông còn nổi tiếng với vai trò tác giả, diễn giả truyền cảm hứng và khách mời trên nhiều chương trình truyền hình, trong đó có “Ai là triệu phú” trên truyền hình VTV.
Trong suốt sự nghiệp, Tiến sĩ Lê Thống Nhất đã nhận nhiều giải thưởng giáo dục và được biết đến như một người luôn đổi mới, ứng dụng công nghệ vào dạy và học, góp phần lan tỏa tri thức và niềm say mê học tập cho thế hệ trẻ.
