Lọc Dữ Liệu Trong Excel: Hướng Dẫn Chi Tiết Từ Cơ Bản Đến Nâng Cao

Mục lục bài viết

Mở Đầu

Trong môi trường làm việc hiện đại, Excel đã trở thành công cụ không thể thiếu đối với hầu hết các ngành nghề, từ kế toán, tài chính, marketing cho đến quản lý dự án và nghiên cứu khoa học. Một trong những tính năng mạnh mẽ và thường xuyên được sử dụng nhất của Excel chính là lọc dữ liệu (Data Filtering). Việc biết cách lọc dữ liệu một cách hiệu quả không chỉ giúp bạn tiết kiệm thời gian mà còn nâng cao độ chính xác trong việc phân tích, báo cáo và ra quyết định.

Bài viết dưới đây sẽ cung cấp cho bạn một hướng dẫn chi tiết, từ những kiến thức cơ bản nhất cho người mới bắt đầu, tới các kỹ thuật lọc dữ liệu nâng cao dành cho những người đã có kinh nghiệm. Chúng ta sẽ:

  1. Giải thích khái niệm và lợi ích của việc lọc dữ liệu trong Excel.
  2. Hướng dẫn cách sử dụng các công cụ lọc cơ bản: AutoFilter, Advanced Filter và Slicers.
  3. Trình bày các kỹ thuật lọc nâng cao: lọc theo màu, lọc theo công thức, lọc động bằng hàm FILTER (Excel 365/2026).
  4. Giới thiệu cách kết hợp lọc dữ liệu với các công cụ khác như PivotTable, Power Query và VBA.
  5. Đưa ra một số mẹo, thủ thuật và lỗi thường gặp khi lọc dữ liệu, cùng cách khắc phục.

Hãy cùng bắt đầu khám phá và làm chủ công cụ lọc dữ liệu trong Excel để nâng cao năng suất làm việc của bạn!

1. Khái Niệm Cơ Bản Về Lọc Dữ Liệu

1.1 Lọc dữ liệu là gì?

Lọc dữ liệu (Data Filtering) trong Excel là quá trình hiển thị chỉ những hàng (record) thỏa mãn một hoặc nhiều tiêu chí nhất định, trong khi ẩn đi các hàng không phù hợp. Điều này cho phép người dùng tập trung vào những thông tin quan trọng, nhanh chóng tìm ra mẫu (pattern) hoặc bất thường (outlier) trong tập dữ liệu lớn.

1.2 Lợi ích khi sử dụng lọc dữ liệu

Lợi íchMô tả
Tiết kiệm thời gianKhông cần phải duyệt qua toàn bộ bảng dữ liệu để tìm thông tin cần thiết.
Tăng độ chính xácGiảm thiểu sai sót khi sao chép, di chuyển dữ liệu thủ công.
Hỗ trợ phân tíchDễ dàng tạo báo cáo tạm thời, phân đoạn dữ liệu theo nhóm.
Tương tác trực quanNgười dùng có thể thay đổi tiêu chí lọc ngay lập tức và xem kết quả tức thời.
Kết hợp với các công cụ khácLọc dữ liệu có thể được áp dụng trước khi tạo PivotTable, Power Query, hoặc viết macro VBA để tự động hoá quy trình.

2. Các Công Cụ Lọc Cơ Bản Trong Excel

2.1 AutoFilter (Lọc Tự Động)

2.1.1 Kích hoạt AutoFilter

  1. Chọn vùng dữ liệu: Đặt con trỏ vào bất kỳ ô nào trong bảng dữ liệu.
  2. Vào thẻ “Data” (Dữ liệu) → Nhấn Filter (Biểu tượng phễu).
  3. Excel sẽ tự động thêm mũi tên thả xuống (dropdown) ở tiêu đề mỗi cột.

2.1.2 Sử dụng AutoFilter

  • Lọc theo giá trị: Nhấp vào mũi tên thả xuống → Bỏ chọn “Select All” → Chọn các giá trị mong muốn → OK.
  • Lọc theo điều kiện: Chọn Number Filters (đối với số) hoặc Text Filters (đối với văn bản) → Chọn điều kiện (ví dụ: “Greater Than”, “Contains”) → Nhập giá trị → OK.
  • Lọc theo màu: Nếu ô đã được tô màu, có thể lọc theo Filter by Color → Chọn màu muốn hiển thị.

2.1.3 Xóa bộ lọc

  • Nhấn lại biểu tượng Filter trên thẻ Data để tắt AutoFilter, hoặc
  • Trong menu dropdown, chọn Clear Filter From “Tên Cột”.

2.2 Advanced Filter (Lọc Nâng Cao)

Advanced Filter cho phép lọc dựa trên nhiều tiêu chí phức tạp, thậm chí có thể sao chép kết quả lọc sang một vị trí khác.

2.2.1 Cấu trúc tiêu chí

  • Tiêu đề tiêu chí phải trùng khớp với tiêu đề cột trong bảng dữ liệu.
  • Tiêu chí được viết dưới tiêu đề, có thể sử dụng các toán tử so sánh (>, <, >=, <=, <>, =) và ký tự đại diện (, ?).
  • Để kết hợp AND, đặt các tiêu chí trên cùng một hàng.
  • Để kết hợp OR, đặt các tiêu chí trên các hàng khác nhau.

2.2.2 Thực hiện Advanced Filter

  1. Chuẩn bị vùng tiêu chí (ví dụ: A1:B3).
  2. Chọn Data → Advanced.
  3. Trong hộp thoại:
  4. List range: Chọn toàn bộ bảng dữ liệu.
  5. Criteria range: Chọn vùng tiêu chí đã chuẩn bị.
  6. Copy to (nếu muốn sao chép kết quả): Chọn ô đầu tiên của vùng đích.
  7. Nhấn OK.

2.2.3 Ví dụ thực tế

Giả sử bảng bán hàng có các cột: Ngày, Sản phẩm, Khu vực, Doanh thu. Muốn lọc các giao dịch trong tháng 3 năm 2026 và Doanh thu > 10,000:

NgàyDoanh thu
>=03/01/2026>10000
<=03/31/2026

Sau khi thiết lập tiêu chí, chạy Advanced Filter để nhận danh sách giao dịch thỏa mãn.

2.3 Slicers (Bộ lọc dạng hình ảnh)

Slicers là công cụ lọc trực quan, thường được sử dụng kèm với PivotTable hoặc Excel Tables.

2.3.1 Thêm Slicer cho Table

  1. Chọn bất kỳ ô nào trong Table (được tạo bằng Ctrl+T).
  2. Vào thẻ Table Design → Nhấn Insert Slicer.
  3. Chọn các trường (cột) muốn tạo slicer → OK.

2.3.2 Thêm Slicer cho PivotTable

  1. Chọn PivotTable → Thẻ PivotTable Analyze → Insert Slicer.
  2. Chọn trường → OK.

2.3.3 Ưu điểm của Slicer

  • Giao diện người dùng trực quan, dễ hiểu.
  • Hỗ trợ lọc đa lựa chọn (Shift + Click).
  • Có thể định dạng màu sắc, kích thước để phù hợp với báo cáo.

3. Kỹ Thuật Lọc Nâng Cao

3.1 Lọc theo màu

Nếu bạn đã tô màu cho các ô (ví dụ: màu xanh cho “đã hoàn thành”, màu đỏ cho “chưa hoàn thành”), bạn có thể lọc nhanh:

  1. Click vào mũi tên dropdown của cột chứa màu.
  2. Chọn Filter by Color → Chọn màu muốn hiển thị.

Lưu ý: Lọc màu chỉ hoạt động khi màu được áp dụng trực tiếp cho ô, không phải qua Conditional Formatting. Đối với Conditional Formatting, cần dùng Custom Filter với công thức.

3.2 Lọc bằng công thức (Custom Filter)

Bạn có thể dùng công thức trong Advanced Filter để lọc theo điều kiện phức tạp.

3.2.1 Ví dụ: Lọc các khách hàng có tổng mua hàng > 50,000 trong năm 2026

Giả sử bảng có cột Khách hàng, Ngày, Giá trị. Tạo một cột phụ Total_2023 với công thức:

=IF(YEAR(@Ngày)=2026,@Giá trị,0)

Sau đó tạo PivotTable tổng hợp theo Khách hàng và Total_2023, và sử dụng Value Filters → Greater Than 50000.

Hoặc, trong Advanced Filter, bạn có thể viết công thức mảng trong cột tiêu chí:

=SUMIFS(Giá trị, Khách hàng, A2, YEAR(Ngày),2026)>50000

Nhưng cách này yêu cầu sử dụng named ranges hoặc Table references để công thức hoạt động.

3.3 Hàm FILTER (Excel 365/2026)

Excel 365 giới thiệu hàm FILTER cho phép lọc dữ liệu trực tiếp trong công thức, tạo ra một dynamic array.

3.3.1 Cú pháp

FILTER(array, include, if_empty)
  • array: Dải dữ liệu cần lọc.
  • include: Mảng Boolean (TRUE/FALSE) xác định hàng nào được giữ lại.
  • if_empty: Giá trị trả về nếu không có hàng nào thỏa mãn.

3.3.2 Ví dụ thực tế

Lọc danh sách sản phẩm có Doanh thu > 20,000:

=FILTER(A2:D100, D2:D100>20000, "Không có dữ liệu")

Kết quả sẽ tự động mở rộng (spill) ra các ô liền kề.

3.3.3 Kết hợp FILTER với các hàm khác

  • SORT: =SORT(FILTER(...), 2, -1) → Lọc rồi sắp xếp giảm dần theo cột 2.
  • UNIQUE: =UNIQUE(FILTER(...)) → Lấy danh sách duy nhất sau khi lọc.
  • LET: Định nghĩa biến tạm để tăng hiệu năng.
=LET( data, A2:E500, cond, (dataDoanh thu>20000)(dataKhu vực="Miền Bắc"), SORT(FILTER(data, cond), 3, -1)
)

3.4 Lọc động với Dynamic Named Ranges

Khi dữ liệu thay đổi (thêm/xóa hàng), bạn có thể dùng Table hoặc OFFSET + COUNTA để tạo tên dải động, giúp các công thức lọc luôn cập nhật.

Lọc Dữ Liệu Trong Excel
Lọc Dữ Liệu Trong Excel

3.4.1 Tạo Table

  • Chọn dữ liệu → Ctrl+T → Đánh dấu “My table has headers”.
  • Table tự động mở rộng khi thêm hàng mới.

3.4.2 Tạo Named Range bằng OFFSET

=OFFSET(Sheet1!$A$2,0,0,COUNTA(Sheet1!$A:$A)-1,5)

Sau đó dùng tên này trong hàm FILTER hoặc Advanced Filter.

4. Kết Hợp Lọc Dữ Liệu Với Các Công Cụ Khác

4.1 PivotTable

PivotTable là công cụ tóm tắt dữ liệu mạnh mẽ, và lọc dữ liệu trong PivotTable giúp bạn nhanh chóng phân tích các phân khúc.

  • Value Filters: Lọc dựa trên giá trị tổng, trung bình, v.v.
  • Label Filters: Lọc theo nhãn (text).
  • Report Filter: Thêm trường vào khu vực filter để người dùng lựa chọn.

4.2 Power Query (Get & Transform)

Power Query cung cấp giao diện kéo-thả để làm sạch, biến đổi và lọc dữ liệu trước khi tải vào Excel.

4.2.1 Các bước lọc trong Power Query

  1. Data → Get Data → From Table/Range.
  2. Trong Power Query Editor, chọn cột → Home → Keep Rows → Keep Only hoặc Remove Rows → Remove Duplicates, Remove Blank Rows, v.v.
  3. Áp dụng các filter dropdown giống như trong Excel, nhưng các bước này được ghi lại dưới dạng M code để tái sử dụng.

4.2.2 Lợi ích

  • Lọc dữ liệu một lần, sau đó refresh khi nguồn dữ liệu thay đổi.
  • Có thể kết hợp nhiều nguồn dữ liệu (SQL, CSV, Web) và thực hiện lọc đồng thời.

4.3 VBA (Macro)

Khi cần tự động hoá quy trình lọc phức tạp, VBA là công cụ mạnh.

4.3.1 Ví dụ macro lọc dữ liệu

Sub FilterByCriteria() Dim ws As Worksheet Set ws = ThisWorkbook.Sheets("Bán hàng") With ws.Range("A1").CurrentRegion .AutoFilter Field:=4, Criteria1:=">10000" ' Doanh thu > 10,000 .AutoFilter Field:=3, Criteria1:="Miền Bắc" ' Khu vực = Miền Bắc End With
End Sub

4.3.2 Lọc và sao chép kết quả

Sub FilterAndCopy() Dim src As Range, dest As Range Set src = Sheets("Data").Range("A1").CurrentRegion src.AutoFilter Field:=2, Criteria1:=">2026-01-01" Set dest = Sheets("Result").Range("A1") src.SpecialCells(xlCellTypeVisible).Copy Destination:=dest src.AutoFilter ' Tắt filter
End Sub

4.4 Báo Cáo Tự Động Với Power BI

Nếu dữ liệu lớn và yêu cầu báo cáo tương tác, bạn có thể xuất dữ liệu đã lọc (hoặc toàn bộ) sang Power BI, nơi các visual sẽ tự động phản ánh các bộ lọc được áp dụng.

5. Mẹo, Thủ Thuật Và Xử Lý Lỗi Khi Lọc Dữ Liệu

Mẹo/Thủ thuậtMô tả
Sử dụng Table cho dữ liệu độngKhi thêm hàng mới, bảng và các công thức lọc sẽ tự động mở rộng.
Đặt tiêu đề rõ ràngLọc dựa trên tiêu đề chính xác, tránh lỗi “The criteria range is not valid”.
Lọc bằng ký tự đại diện đại diện cho bất kỳ chuỗi ký tự nào, ? cho một ký tự. Ví dụ: test để chứa “test” ở bất kỳ vị trí nào.
Kiểm tra dữ liệu trốngCác hàng chứa ô trống có thể bị loại bỏ không mong muốn; sử dụng “Blanks” trong filter để hiển thị.
Xóa bộ lọc trước khi sao chépKhi sao chép dữ liệu đã lọc, dùng SpecialCells(xlCellTypeVisible) để chỉ sao chép các hàng hiển thị.
Tránh lọc trên dữ liệu đã được sắp xếpNếu dữ liệu đã được sắp xếp, lọc có thể làm mất thứ tự; nên sắp xếp lại sau khi lọc hoặc dùng hàm SORT.
Sử dụng “Clear All Filters”Khi có nhiều bộ lọc, dùng Data → Clear All để nhanh chóng xóa mọi tiêu chí.
Lưu macro lọcNếu sử dụng VBA, lưu macro vào Personal Macro Workbook để dùng lại trên mọi file.
Kiểm tra định dạng dữ liệuLọc số trên cột định dạng “Text” sẽ không hoạt động; chuyển sang “Number”.
Sử dụng “Advanced Filter” để sao chépKhi cần tạo danh sách con mà không làm thay đổi bảng gốc, luôn chọn Copy to another location.

Xử lý lỗi thường gặp

  1. “The list range and criteria range must be on the same worksheet”
  2. Đảm bảo rằng vùng dữ liệu và vùng tiêu chí nằm trên cùng một sheet. Nếu cần lọc dữ liệu trên sheet khác, sao chép tiêu chí sang sheet đó.

  3. “No records match your criteria”

  4. Kiểm tra lại các toán tử và ký tự đại diện. Đôi khi khoảng trắng thừa hoặc định dạng ngày tháng sai gây lỗi.

  5. Lọc không hiển thị tất cả các giá trị

  6. Kiểm tra xem có hidden rows (ô ẩn) không; mở rộng toàn bộ sheet bằng Ctrl+A → Ctrl+Shift+9.

  7. Lỗi khi sử dụng hàm FILTER với mảng không đồng nhất

  8. Đảm bảo include có cùng kích thước với array. Nếu không, sử dụng -- để ép kiểu hoặc IFERROR.

6. Thực Hành: 5 Bài Tập Lọc Dữ Liệu Thực Tế

Bài 1: Lọc khách hàng “VIP” trong khu vực “Miền Nam” và doanh thu > 30,000

  1. Tạo Table cho dữ liệu bán hàng.
  2. Sử dụng AutoFilter → chọn “Miền Nam” → “VIP”.
  3. Click vào cột Doanh thu → Number Filters → Greater Than → nhập 30000.

Bài 2: Lọc các đơn hàng trong tháng 12/2026 và sao chép sang sheet “December”

  1. Advanced Filter: Tiêu chí Ngày >=12/01/2026 và Ngày <=12/31/2026.
  2. Chọn Copy to → December!A1.

Bài 3: Dùng hàm FILTER để tạo danh sách sản phẩm còn tồn kho dưới 10 đơn vị

=FILTER(ProductsProductName, ProductsStock<10, "Hết hàng")

Bài 4: Tạo Slicer cho PivotTable “Doanh thu theo Khu vực”

  1. Chọn PivotTable → Insert Slicer → chọn “Khu vực”.
  2. Thiết lập màu sắc cho slicer để phù hợp báo cáo.

Bài 5: Tự động lọc và gửi email báo cáo hàng ngày bằng VBA

Sub DailyReport() Call FilterByCriteria ' gọi macro lọc ' Copy dữ liệu đã lọc Sheets("Result").Range("A1").CurrentRegion.Copy ' Tạo email Dim OutApp As Object, OutMail As Object Set OutApp = CreateObject("Outlook.Application") Set OutMail = OutApp.CreateItem(0) With OutMail .To = "manager@company.com" .Subject = "Báo cáo doanh thu ngày " & Format(Date, "dd-mm-yyyy") .HTMLBody = "<p>Xin chào,</p><p>Đính kèm báo cáo doanh thu ngày hôm nay.</p>" .Attachments.Add "C:\Temp\Report.xlsx" .Send End With Set OutMail = Nothing: Set OutApp = Nothing
End Sub

7. Kết Luận

Lọc dữ liệu trong Excel không chỉ là một chức năng đơn giản mà là một công cụ chiến lược giúp bạn khai thác giá trị từ hàng triệu dòng dữ liệu. Từ AutoFilter nhanh chóng, Advanced Filter mạnh mẽ, tới Slicers trực quan và hàm FILTER hiện đại, mỗi phương pháp đều có ưu điểm riêng phù hợp với các tình huống khác nhau.

Khi kết hợp lọc với PivotTable, Power Query, và VBA, bạn sẽ tạo ra những quy trình làm việc tự động, giảm thiểu lỗi và tăng năng suất đáng kể. Đồng thời, việc nắm vững các mẹo, thủ thuật và cách khắc phục lỗi sẽ giúp bạn tự tin xử lý mọi thách thức trong việc quản lý và phân tích dữ liệu.

Hãy áp dụng những kiến thức này ngay hôm nay, biến Excel thành trợ thủ đắc lực cho công việc và đưa ra các quyết định dựa trên dữ liệu một cách thông minh và nhanh chóng!

⚠️
LƯU Ý QUAN TRỌNG: Miễn trừ trách nhiệm: Mặc dù chúng tôi luôn nỗ lực để đảm bảo tính chính xác và cập nhật của thông tin, nhưng các quy định về giáo dục và tuyển sinh có thể thay đổi theo thời gian. BigSchool không chịu trách nhiệm về bất kỳ sai sót nào hoặc kết quả phát sinh từ việc sử dụng thông tin trên trang này. Độc giả nên liên hệ trực tiếp với nhà trường hoặc cơ quan chức năng để có thông tin mới nhất. Ngoài ra, BigSchool tuyệt đối không bán sản phẩm, khóa học hay cung cấp dịch vụ được nhắc đến trong bài.

Viết một bình luận