Hướng dẫn cách dùng bộ lọc tự động (AutoFilter) trên Excel

Nội dung được viết bởi G-LEARNING

Có hai loại AutoFilters trong Excel, đó là AutoFilters và List (Table) AutoFilters. Nếu bạn đang sử dụng AutoFilter, hãy chắc chắn rằng chúng được thiết kế cho loại Bộ lọc tự động có trong sổ làm việc của bạn trên Excel.

Bộ Lọc Tự Động Excel

Trong Excel, nếu bạn có một phạm vi ô có hàng chứa tiêu đề và hàng chứa dữ liệu, bạn có thể sử dụng tính năng Tự động lọc.

 Xem hướng dẫn Bấm vào đây

Cách tạo bộ lọc tự động trên bảng tính

Ở phiên bản cũ của Excel, chỉ có một loại Trình lọc tự động – Trình lọc tự động bảng tính.

Bạn có thể sử dụng AutoFilters của bảng tính và hình ảnh bên dưới sẽ cho thấy cách chúng hoạt động

  • Có các bộ lọc trong Danh sách B
  • Bấm vào Danh sách A và bấm lệnh Lọc
  • Excel tự động xóa các bộ lọc khỏi Danh sách B
  • Bấm lại lệnh Bộ lọc và Excel đã thêm bộ lọc vào Danh sách A
sheetautofilter01

Liệt kê các bộ lọc tự động

Trong Excel 2007 và các phiên bản mới hơn, có loại Bộ lọc tự động thứ hai – Bộ lọc tự động danh sách.

Nếu bạn định dạng phạm vi dưới dạng bảng Excel có tên , tính năng Tự động lọc sẽ được bật tự động. Bạn sẽ thấy các mũi tên trong hàng tiêu đề và bạn có thể sử dụng chúng để lọc một trong các cột khác.

Bạn có thể có nhiều Bộ lọc tự động danh sách trên mỗi trang tính, như bạn có thể thấy trong ảnh chụp màn hình bên dưới.

bộ lọcmacrocriterial02

Tạo lệnh lọc tự động bằng Macro VBA

Nhìn chung, hai loại AutoFilters hoạt động khá giống nhau khi bạn làm thủ công mọi thứ trên bảng tính.

Tuy nhiên, bạn có thể gặp lỗi khi bạn đang sử dụng macro Excel để áp dụng với AutoFilter

  • Nếu bạn vừa có một bảng được đặt tên trên một Sheet, có lẽ bạn có thể sử dụng một macro được thiết kế cho một trong hai loại Trình lọc tự động
  • Nếu bạn có nhiều bảng được đặt tên, hãy chắc chắn sử dụng một macro được thiết kế cho Danh sách bộ lọc tự động.

Cách bỏ bộ lọc tự động

Dưới đây là hai macro AutoFilter hiển thị tất cả các bản ghi trong phạm vi được lọc.

Macro này được thiết kế cho Bộ lọc tự động trên bảng tính, nhưng cũng có thể xóa các bộ lọc trong bảng Excel đã lọc.

Sub ShowAllRecordsWS()   
With ActiveSheet.AutoFilter   
If 
.FilterMode 
Then     
.ShowAllData     
End If   
End With 
End Sub 

Macro dưới đây được thiết kế cho List AutoFilters. Nó không thể xóa các bộ lọc trong phạm vi không phải Bảng trên bảng tính.

Sub ShowAllRecordsList1() 
Dim Lst As ListObject Dim ws As Worksheet Set ws = ActiveSheet Set Lst = ws.ListObjects(1)   
With Lst.AutoFilter     
If 
.FilterMode 
Then       
.ShowAllData     
End If   
End With 
End Sub

Qua bài viết này, chúng ta đã có thể biết được cách ứng dụng Macro để tự động hóa cho thao tác lọc dữ liệu bằng AutoFilter. Để tìm hiểu thêm các ứng dụng khác của VBA trong công việc, các bạn hãy truy cập ngay địa chỉ: https://gitiho.com/

KHÓA HỌC EXCEL ONLINE HOÀN TOÀN MIỄN PHÍ

Khóa học với hơn 14000 HỌC VIÊN đang học và đánh giá trung bình 4.76 SAO

0/5 - (0 bình chọn)

0/5 - (0 bình chọn)

0 thảo luận

@ 2020 - Bản quyền của Công ty cổ phần công nghệ giáo dục Gitiho Việt Nam
Giấy chứng nhận Đăng ký doanh nghiệp số: 0109077145, cấp bởi Sở kế hoạch và đầu tư TP. Hà Nội
Giấy phép mạng xã hội số: 588, cấp bởi Bộ thông tin và truyền thông