
Hàm UNIQUE, SORT Và SORTBY Trong Excel: Lọc Trùng Và Sắp Xếp
Ba hàm này thường dùng chung với nhau: UNIQUE lấy danh sách không trùng, SORT sắp xếp theo giá trị của chính cột đó, SORTBY sắp xếp theo một cột khác. Tất cả đều thuộc nhóm mảng động, có từ Office 2021 trở lên.

Hàm UNIQUE
=UNIQUE(vùng, [theo_cột], [chỉ_lấy_xuất_hiện_một_lần])
Dùng đơn giản nhất là lấy danh sách không trùng từ một cột:
=UNIQUE(B2:B500)
Kết quả tự tràn xuống, và tự cập nhật khi bạn thêm dữ liệu mới. Đây là cách nhanh nhất để tạo danh mục khách hàng, danh mục sản phẩm từ bảng dữ liệu phát sinh.
Tham số thứ ba ít người biết nhưng rất hữu ích: đặt là TRUE thì hàm chỉ trả về những giá trị xuất hiện đúng một lần, bỏ qua cả những giá trị có bản trùng. Dùng để tìm các bản ghi bất thường.
=UNIQUE(B2:B500, FALSE, TRUE)
Lấy danh sách không trùng từ nhiều cột
Truyền vào cả khối thay vì một cột:
=UNIQUE(A2:B500)
Hàm coi mỗi dòng là một tổ hợp và loại các dòng trùng nhau cả hai cột. Hữu ích khi bạn cần danh sách cặp tỉnh thành và quận huyện chẳng hạn.

Hàm SORT
=SORT(vùng, [cột_sắp_xếp], [thứ_tự], [theo_cột])
Sắp xếp tăng dần là mặc định:
=SORT(A2:D500, 3, -1)
Sắp xếp bảng theo cột thứ ba, giảm dần. Tham số thứ tự nhận 1 cho tăng dần và -1 cho giảm dần.
Khác biệt lớn nhất so với nút sắp xếp trên thanh công cụ: SORT không động vào dữ liệu gốc. Bảng nguồn giữ nguyên thứ tự, kết quả sắp xếp nằm ở chỗ khác và tự cập nhật.
Hàm SORTBY
Dùng khi bạn muốn sắp xếp theo một cột không nằm trong kết quả hiển thị.
=SORTBY(A2:B500, C2:C500, -1)
Hiển thị cột A và B, nhưng sắp xếp theo giá trị của cột C giảm dần. Với SORT thì bạn buộc phải đưa cột C vào vùng hiển thị mới sắp xếp theo nó được.
SORTBY cũng nhận nhiều cấp sắp xếp:
=SORTBY(A2:B500, C2:C500, -1, D2:D500, 1)
Sắp theo cột C giảm dần trước, các dòng bằng nhau thì sắp tiếp theo cột D tăng dần.
Ghép ba hàm với nhau
Tổ hợp hay dùng nhất là lấy danh sách không trùng rồi sắp xếp:
=SORT(UNIQUE(B2:B500))
Thêm điều kiện lọc vào nữa:
=SORT(UNIQUE(FILTER(B2:B500, C2:C500>1000000)))
Lấy danh sách khách hàng không trùng, chỉ những người có đơn trên một triệu, rồi sắp xếp theo bảng chữ cái. Ba hàm lồng nhau thay cho cả một quy trình thủ công. Cách dùng FILTER chi tiết ở bài hàm FILTER trong Excel.
Ứng dụng: tạo danh sách chọn tự cập nhật
Dùng UNIQUE để sinh danh mục, rồi trỏ Data Validation vào vùng tràn đó bằng dấu #:
Đặt công thức =SORT(UNIQUE(B2:B500)) ở ô H2, sau đó trong Data Validation nhập nguồn là =$H$2#. Từ đó danh sách chọn tự dài ra khi có khách hàng mới, không phải sửa lại vùng.
Lỗi thường gặp
Lỗi #SPILL. Vùng tràn bị chặn, xem cách xử lý tại mảng động và lỗi #SPILL.
Kết quả có dòng trống. Do vùng tham chiếu rộng hơn dữ liệu thực. UNIQUE coi ô trống là một giá trị. Thu hẹp vùng, hoặc lồng thêm FILTER để loại ô trống.
Giá trị trông giống nhau nhưng vẫn bị tách. Thường do khoảng trắng thừa. Bọc thêm TRIM vào vùng trước khi đưa vào UNIQUE.
Nếu Excel của bạn chưa có nhóm hàm này, bản thấp nhất hỗ trợ là key Office 2021, đối chiếu các bản tại so sánh Office 2016, 2019, 2021 và 2024.
Câu hỏi thường gặp
UNIQUE có phân biệt chữ hoa chữ thường không?
Không. Hàm coi hai chuỗi chỉ khác nhau về hoa thường là một.
Có cách nào đếm số giá trị không trùng không?
Bọc UNIQUE trong COUNTA, ví dụ =COUNTA(UNIQUE(B2:B500)).
Dữ liệu gốc bị xóa thì kết quả có mất không?
Kết quả tự co lại theo dữ liệu còn lại. Nếu xóa hết thì công thức báo lỗi vì không còn vùng tham chiếu.



