Có thể bạn quan tâm: Kỹ Năng Excel Văn Phòng: Bí Quyết Thành Thạo Và Tăng Năng Suất Làm Việc
1. Giới thiệu chung về tính năng lọc trong Excel
Excel là một trong những công cụ bảng tính mạnh mẽ nhất hiện nay, không chỉ giúp người dùng thực hiện các phép tính cơ bản mà còn hỗ trợ rất nhiều tính năng phân tích dữ liệu phức tạp. Trong số những tính năng này, lọc dữ liệu (filter) đóng vai trò then chốt, cho phép người dùng nhanh chóng tìm kiếm, trích xuất và khám phá thông tin cần thiết trong một tập dữ liệu lớn.
Tuy nhiên, khi làm việc với các bảng dữ liệu phức tạp, việc sử dụng lọc tiêu chuẩn (AutoFilter) đã không còn đủ đáp ứng nhu cầu. Đó là lúc chúng ta cần đến lọc nâng cao (Advanced Filter) – một công cụ mạnh mẽ giúp thực hiện các tiêu chí lọc phức tạp, trích xuất dữ liệu duy nhất, sao chép kết quả sang vị trí khác và thậm chí tạo ra các tập hợp con dựa trên nhiều điều kiện.
Bài viết này sẽ cung cấp cho bạn một hướng dẫn chi tiết, đầy đủ và thực tiễn về cách sử dụng lọc nâng cao trong Excel, bao gồm:
- Khái niệm và ưu điểm so với lọc tiêu chuẩn.
- Cấu trúc và cách thiết lập điều kiện lọc (criteria range).
- Thực hiện lọc trong cùng một sheet và sao chép kết quả sang sheet khác.
- Sử dụng các toán tử logic (AND, OR), wildcards, và công thức tùy chỉnh.
- Kết hợp lọc nâng cao với bảng động (PivotTable), hàm và Macro VBA.
- Các lỗi thường gặp và cách khắc phục.
- Ứng dụng thực tế trong quản lý kinh doanh, tài chính, nhân sự và marketing.
Sau khi đọc xong, bạn sẽ nắm vững kỹ thuật lọc nâng cao, có thể áp dụng linh hoạt vào mọi tình huống thực tế và nâng cao hiệu suất làm việc trong Excel.
Có thể bạn quan tâm: Kẻ Bảng Trong Excel 2026: Hướng Dẫn Chi Tiết Từ Cơ Bản Đến Nâng Cao
2. Lọc tiêu chuẩn vs. lọc nâng cao: So sánh nhanh
| Tiêu chí | Lọc tiêu chuẩn (AutoFilter) | Lọc nâng cao (Advanced Filter) |
|---|---|---|
| Độ phức tạp điều kiện | Thông thường 1 cột, 1 hoặc nhiều giá trị (OR). | Nhiều cột, hỗ trợ AND/OR, công thức tùy chỉnh. |
| Kết quả | Hiển thị ngay trên bảng gốc (ẩn các dòng không thỏa mãn). | Có thể sao chép kết quả sang vị trí mới, giữ nguyên bảng gốc. |
| Lọc duy nhất (Unique) | Không có tùy chọn trực tiếp. | Có tùy chọn Unique records only. |
| Lưu trữ điều kiện | Không lưu, phải thiết lập lại mỗi lần. | Điều kiện được lưu trong một criteria range, có thể tái sử dụng. |
| Sử dụng trong VBA | Hạn chế, thường dùng AutoFilter method. | Dễ dàng gọi Range.AdvancedFilter trong macro. |
Với những lợi thế trên, lọc nâng cao trở thành công cụ không thể thiếu khi bạn cần:
- Trích xuất danh sách khách hàng duy nhất.
- Lọc dữ liệu dựa trên nhiều tiêu chí đồng thời (ví dụ: “Doanh thu > 100 triệu và khu vực = Hà Nội hoặc TP.HCM”).
- Tạo các báo cáo tóm tắt nhanh chóng mà không làm thay đổi dữ liệu gốc.
Có thể bạn quan tâm: Khóa Học Excel Miễn Phí: Hướng Dẫn Toàn Diện Để Thành Thạo Công Cụ Văn Bàn Số 1
3. Cấu trúc của một lệnh Advanced Filter
Để thực hiện lọc nâng cao, Excel yêu cầu ba thành phần chính:
- Data range (dải dữ liệu) – vùng chứa dữ liệu gốc cần lọc, bao gồm tiêu đề cột.
- Criteria range (dải tiêu chí) – vùng chứa các tiêu đề cột và điều kiện lọc. Đây là phần quan trọng nhất, quyết định cách lọc sẽ diễn ra như thế nào.
- Copy to range (dải sao chép) – (tùy chọn) nếu muốn kết quả lọc được sao chép sang vị trí khác, bạn cần chỉ định một vùng bắt đầu (phải có tiêu đề trùng khớp).
3.1. Định dạng Criteria Range
Criteria range phải bắt buộc có cùng tiêu đề cột với data range. Các tiêu đề này không nhất thiết phải nằm trong cùng vị trí, nhưng phải giống hệt nhau (không có dấu cách thừa, không thay đổi chữ hoa/thường).
3.1.1. Cách viết điều kiện
- Điều kiện đơn: Ghi trực tiếp vào ô dưới tiêu đề, ví dụ
>1000,=Hà Nội,<>Bán hàng. - Wildcard: Dùng
(bất kỳ chuỗi ký tự nào) và?(một ký tự). Ví dụ2026để lọc mọi giá trị chứa “2026”. - Nhiều điều kiện OR: Đặt các điều kiện trên các dòng khác nhau trong cùng một cột tiêu đề. Excel sẽ hiểu là “hoặc”.
- Nhiều điều kiện AND: Đặt các điều kiện trên các cột khác nhau trong cùng một dòng. Excel sẽ hiểu là “và”.
3.1.2. Ví dụ thực tế
Giả sử bảng dữ liệu B2:E100 gồm các cột: Mã KH, Tên KH, Khu vực, Doanh thu. Ta muốn lọc các khách hàng:
- Khu vực là Hà Nội hoặc TP.HCM.
- Doanh thu lớn hơn 200 triệu.
Criteria range có thể được thiết lập như sau (giả sử ở G1:H3):
| G | H |
|---|---|
| Khu vực | Doanh thu |
| Hà Nội | >200000000 |
| TP.HCM |
- Dòng 2: Điều kiện Khu vực = Hà Nội và Doanh thu > 200M (AND).
- Dòng 3: Điều kiện Khu vực = TP.HCM và Doanh thu không ràng buộc (vì ô H3 trống, nghĩa là không có tiêu chí cho cột này). Khi có nhiều dòng, Excel sẽ thực hiện OR giữa các dòng.
3.2. Cú pháp lệnh Advanced Filter trong VBA
Range("B2:E100").AdvancedFilter _ Action:=xlFilterCopy, _ CriteriaRange:=Range("G1:H3"), _ CopyToRange:=Range("J1:M1"), _ Unique:=False
Trong giao diện người dùng, bạn thực hiện qua Data → Advanced và điền các ô tương ứng.
4. Thực hành: Bước‑bước lọc nâng cao trong Excel (Giao diện)
4.1. Chuẩn bị dữ liệu mẫu
- Nhập dữ liệu: Tạo một bảng từ A1:E21 với các cột:
Mã SP,Tên SP,Loại,Ngày nhập,Giá bán. - Định dạng thành Table (Ctrl+T) – giúp việc tham chiếu dễ dàng hơn, nhưng không bắt buộc.
4.2. Thiết lập Criteria Range
Giả sử bạn muốn lọc:
- Loại = “Điện thoại” hoặc “Laptop”.
- Giá bán từ 5,000,000 đến 15,000,000 (cùng lúc).
Cách làm:
| G | H |
|---|---|
| Loại | Giá bán |
| Điện thoại | >=5000000 |
| Laptop | <=15000000 |
- Dòng 2 và 3 là hai bộ điều kiện OR (vì nằm trên các dòng khác nhau).
- Trong cột
Giá bán, chúng ta có thể để trống nếu không muốn ràng buộc, nhưng ở đây dùng các toán tử>=và<=để giới hạn.
4.3. Thực hiện lọc
- Chọn Data → Advanced.
- List range:
$A$1:$E$21. - Criteria range:
$G$1:$H$3. - Copy to:
$J$1(đặt tiêu đề ở J1:K1:L1:M1:N1 sao cho khớp với data range). - Tick Unique records only nếu muốn loại bỏ bản sao.
- Nhấn OK.
Kết quả sẽ xuất hiện ở cột J‑N, chỉ hiển thị các sản phẩm thỏa mãn cả hai tiêu chí.
4.4. Lọc trực tiếp trên bảng (không sao chép)
Nếu bạn chỉ muốn ẩn các dòng không thỏa mãn, bỏ qua mục Copy to và để Action mặc định là Filter the list, in-place. Khi thực hiện, Excel sẽ ẩn các dòng không đáp ứng tiêu chí, giúp bạn nhanh chóng xem dữ liệu con.
5. Các toán tử và ký tự đặc biệt trong Criteria
| Toán tử | Cú pháp | Ý nghĩa |
|---|---|---|
= | =Hà Nội | Bằng |
<> | <>Bán hàng | Không bằng |
> | >1000 | Lớn hơn |
< | <500 | Nhỏ hơn |
>= | >=2000 | Lớn hơn hoặc bằng |
<= | <=3000 | Nhỏ hơn hoặc bằng |
| 2026 | Chứa chuỗi “2026” |
? | ?an | Bắt đầu bằng bất kỳ ký tự nào, sau đó là “an” (ví dụ “Ban”, “Can”) |
= (trống) | Để ô trống | Không áp dụng tiêu chí cho cột đó |
Lưu ý: Khi sử dụng ký tự
=ở đầu, Excel sẽ hiểu đây là công thức, vì vậy luôn viết đầy đủ toán tử (ví dụ>=,<>). Đối với ngày tháng, hãy nhập theo định dạng ngày của hệ thống (VD:>=01/01/2026).
6. Kỹ thuật nâng cao: Sử dụng công thức trong Criteria Range

Có thể bạn quan tâm: Liên Kết Các File Excel: Hướng Dẫn Chi Tiết Từ Cơ Bản Đến Nâng Cao
Đôi khi tiêu chí không thể diễn đạt bằng các toán tử đơn giản, ví dụ:
- Lọc các khách hàng có tổng doanh thu trong năm > 1 tỷ, trong khi dữ liệu chỉ có doanh thu tháng.
- Lọc các sản phẩm có tên chứa ít nhất 2 ký tự “a”.
Trong những trường hợp này, bạn có thể đặt công thức trong ô criteria, sử dụng hàm Excel để trả về TRUE/FALSE.
6.1. Cú pháp công thức
- Công thức phải bắt đầu bằng dấu =.
- Công thức phải trả về TRUE hoặc FALSE (hoặc 1/0).
- Tham chiếu trong công thức phải dùng địa chỉ ô đầu tiên của cột dữ liệu (ví dụ: nếu tiêu đề ở A1, công thức sẽ tham chiếu
A2).
6.2. Ví dụ thực tế
6.2.1. Tổng doanh thu năm > 1 tỷ
Giả sử cột Doanh thu tháng (B) và Năm (C). Ta muốn lọc các năm có tổng doanh thu > 1 tỷ.
Tạo một bảng pivot hoặc SUMIF để tính tổng, nhưng nếu muốn dùng Advanced Filter trực tiếp:
Tạo criteria ở F1 (tiêu đề là
Doanh thu tháng).- Ở F2 nhập công thức:
=SUMIF(C:C, C2, B:B)>1000000000
Lưu ý: Công thức sẽ được áp dụng cho từng dòng; Excel sẽ tự động thay đổi C2, B2 tương ứng.
6.2.2. Tên chứa ít nhất 2 ký tự “a”
Cột Tên SP ở A. Criteria:
- G1:
Tên SP - G2:
=LEN(A2)-LEN(SUBSTITUTE(LOWER(A2),"a",""))>=2
Công thức đếm số lần xuất hiện của “a” (không phân biệt hoa/thường) và kiểm tra >=2.
Sau khi thiết lập, chạy Advanced Filter như bình thường, Excel sẽ chỉ hiển thị các dòng thỏa mãn.
7. Kết hợp lọc nâng cao với các công cụ khác
7.1. Với PivotTable
Sau khi lọc dữ liệu bằng Advanced Filter, bạn có thể nhanh chóng tạo PivotTable từ kết quả sao chép để:
- Tổng hợp doanh thu theo khu vực.
- Đếm số khách hàng duy nhất.
- Phân tích xu hướng thời gian.
Quy trình:
- Thực hiện Advanced Filter → sao chép kết quả sang Sheet2.
- Chọn kết quả → Insert → PivotTable.
- Thiết lập trường và báo cáo như mong muốn.
7.2. Với Power Query (Get & Transform)
Power Query cung cấp giao diện lọc mạnh mẽ hơn, nhưng nếu bạn đã quen với Advanced Filter, có thể:
- Dùng Advanced Filter để làm sạch dữ liệu ban đầu (loại bỏ bản sao, loại bỏ lỗi).
- Sau đó Load dữ liệu đã lọc vào Power Query để thực hiện các bước biến đổi tiếp theo.
7.3. Với VBA tự động hoá
Nếu bạn thường xuyên phải lọc cùng một bộ tiêu chí, hãy viết macro:
Sub Filter_KhachHang() Dim src As Range, crit As Range, dest As Range Set src = Worksheets("Data").Range("A1:D1000") Set crit = Worksheets("Criteria").Range("A1:B3") 'Tiêu chí đã thiết lập Set dest = Worksheets("Result").Range("A1") src.AdvancedFilter Action:=xlFilterCopy, _ CriteriaRange:=crit, _ CopyToRange:=dest, _ Unique:=True
End Sub
Bạn có thể gán macro này cho nút Button, hoặc chạy tự động khi mở file.
8. Xử lý lỗi thường gặp
| Lỗi | Nguyên nhân | Cách khắc phục |
|---|---|---|
| #REF! khi chạy macro | CriteriaRange hoặc CopyToRange không chứa tiêu đề hoặc trùng lặp không đúng. | Đảm bảo tiêu đề trong CriteriaRange trùng khớp chính xác với Data range. |
| Không có dữ liệu được lọc | Các điều kiện quá chặt, hoặc sử dụng toán tử sai. | Kiểm tra lại công thức, loại bỏ dấu cách thừa, dùng cho wildcard nếu cần. |
| Kết quả sao chép không khớp tiêu đề | CopyToRange không có tiêu đề trùng khớp. | Đặt tiêu đề ở cùng vị trí (cùng thứ tự cột) trước khi chạy. |
| Lọc không hiển thị “Unique records only” | Đã bật Unique:=True nhưng vẫn có trùng lặp. | Kiểm tra xem các cột được xét để xác định duy nhất có chứa dữ liệu trùng lặp hay không; có thể cần thêm cột phụ để phân biệt. |
| Wildcard không hoạt động | Đặt hoặc ? trong ô tiêu đề thay vì ô dưới tiêu đề. | Đặt wildcard trong ô điều kiện, không phải tiêu đề. |
9. Ứng dụng thực tiễn trong các lĩnh vực
9.1. Kinh doanh – Quản lý khách hàng
- Phân đoạn khách hàng: Lọc khách hàng có doanh thu > 500 triệu và thuộc khu vực “Miền Bắc” để lên kế hoạch marketing.
- Danh sách email: Lọc các khách hàng có trường “Email” không trống và trạng thái “Đăng ký” để xuất file CSV.
9.2. Tài chính – Kiểm toán
- Kiểm tra giao dịch bất thường: Lọc các giao dịch có giá trị > 1 tỷ hoặc ngày giao dịch nằm trong cuối năm.
- Rút trích báo cáo: Lấy danh sách tài khoản không có giao dịch trong 6 tháng qua (sử dụng công thức
=COUNTIF(...) = 0trong criteria).
9.3. Nhân sự
- Lọc nhân viên nghỉ việc: Tiêu chí “Ngày nghỉ việc” không trống và “Thâm niên” > 5 năm.
- Danh sách tuyển dụng: Lọc các ứng viên có trình độ “Thạc sĩ” hoặc “Tiến sĩ” và kinh nghiệm > 3 năm.
9.4. Marketing
- Chiến dịch quảng cáo: Lọc các chiến dịch có ROI > 150% và chi phí < 50 triệu.
- Phân tích hành vi: Lọc các khách hàng truy cập website hơn 10 lần trong tháng và chưa mua hàng (đánh dấu “Chưa mua”).
10. Tối ưu hoá quy trình làm việc với Advanced Filter
- Chuẩn hoá tiêu đề: Đặt tiêu đề ngắn gọn, không có ký tự đặc biệt, đồng nhất trong toàn bộ workbook.
- Sử dụng Table: Khi dữ liệu được định dạng thành Table (
Ctrl+T), bạn có thể tham chiếu bằng tên Table, giảm lỗi khi thêm/xóa dòng. - Lưu Criteria Range ở một sheet riêng: Tạo sheet “Criteria” để tập trung các tiêu chí, dễ quản lý và tái sử dụng.
- Ghi chú công thức: Khi dùng công thức trong Criteria, đặt comment giải thích để người khác (hoặc bản thân sau này) hiểu.
- Tự động hoá bằng VBA: Đối với quy trình lặp lại hàng ngày/tuần, viết macro để chạy lọc, sao chép, và gửi email báo cáo.
11. Tổng kết
Lọc nâng cao trong Excel không chỉ là một công cụ kỹ thuật mà còn là cầu nối giữa dữ liệu thô và quyết định chiến lược. Khi bạn nắm vững cách thiết lập criteria range, hiểu rõ các toán tử, wildcards, và công thức tùy chỉnh, bạn sẽ:
- Tiết kiệm thời gian xử lý dữ liệu.
- Đảm bảo độ chính xác cao hơn so với lọc thủ công.
- Tạo ra các báo cáo, danh sách, và phân tích có giá trị thực tiễn.
- Dễ dàng tích hợp với các công cụ khác như PivotTable, Power Query, và VBA để xây dựng quy trình tự động hoá.
Hãy bắt đầu áp dụng ngay hôm nay: xác định mục tiêu lọc, thiết lập tiêu chí, chạy Advanced Filter và biến dữ liệu thành thông tin có sức mạnh quyết định. Khi đã thành thạo, bạn sẽ thấy Excel không chỉ là một bảng tính mà còn là một công cụ khai phá dữ liệu đa năng, giúp bạn và tổ chức vững bước trong môi trường kinh doanh ngày càng cạnh tranh.
Chúc bạn thành công!

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ẻ.
