Chào mọi người,
Mình đang làm việc với một file dữ liệu khá lớn và muốn trích xuất ra những dòng thỏa mãn một điều kiện cụ thể. Trước đây mình thường dùng các cách kết hợp IF và mảng hoặc các hàm cũ hơn, nhưng gần đây mình có đọc về hàm FILTER và thấy nó rất tiềm năng.
Theo mình hiểu thì hàm FILTER có cú pháp như sau:
FILTER(array, include, [if_empty])Trong đó:
array: Là mảng hoặc vùng dữ liệu bạn muốn lọc.include: Là một mảng logic (TRUE/FALSE) có cùng kích thước vớiarray. Chỉ những dòng màincludetrả về TRUE mới được giữ lại.[if_empty]: (Tùy chọn) Giá trị trả về nếu không có kết quả nào được tìm thấy.
Ví dụ, mình có một bảng dữ liệu bán hàng từ cột A đến cột E, và mình muốn lọc ra tất cả các đơn hàng có 'Doanh thu' (cột D) lớn hơn 1,000,000.
Mình thử viết công thức như sau:
=FILTER(A2:E100, D2:D100>1000000, "Không có dữ liệu")Công thức này có vẻ hoạt động đúng với mong muốn của mình. Nó trả về một mảng động các dòng thỏa mãn điều kiện.
Tuy nhiên, mình vẫn còn một vài thắc mắc muốn hỏi các cao thủ Excel:
- Có cách nào để kết hợp
FILTERvới nhiều điều kiện (AND/OR) một cách hiệu quả không? Ví dụ, lọc theo 'Doanh thu' > 1,000,000 VÀ 'Sản phẩm' là 'Sách'. - Hàm
FILTERcó thể dùng với các hàm khác để tạo ra báo cáo động phức tạp hơn không? Ví dụ, kết hợp vớiSORTđể vừa lọc vừa sắp xếp. - Mọi người có kinh nghiệm hay mẹo gì khi sử dụng hàm
FILTERđể tối ưu hiệu suất với file dung lượng lớn không?
Rất mong nhận được sự chia sẻ và hướng dẫn từ các anh chị em trong diễn đàn!
Xin cảm ơn!