Chào các bạn,
Mình thường xuyên phải làm việc với các bảng dữ liệu lớn và việc lọc, sắp xếp dữ liệu là công việc gần như hàng ngày. Tuy nhiên, có một vấn đề mình rất hay gặp phải, đó là khi lọc dữ liệu thì cột số thứ tự (STT) lại bị nhảy số, không còn liên tục nữa. Điều này gây khó chịu và làm cho báo cáo trông thiếu chuyên nghiệp.
Trước đây, mình thường phải lọc xong rồi mới điền lại STT thủ công hoặc dùng các hàm phức tạp. Nhưng gần đây, mình có tìm hiểu và áp dụng một cách cực kỳ đơn giản để khắc phục tình trạng này mà không cần dùng đến VBA hay các hàm cao siêu.
Cách này dựa vào việc sử dụng hàm SUBTOTAL kết hợp với COUNTA. Cụ thể, bạn chỉ cần nhập công thức sau vào ô STT đầu tiên (ví dụ ô A2, giả sử dữ liệu bắt đầu từ hàng 2):
=SUBTOTAL(3, $B$2:B2)Sau đó, bạn kéo công thức này xuống cho các hàng còn lại.
Giải thích công thức:
SUBTOTAL(3, ...): Hàm SUBTOTAL với đối số đầu tiên là 3 sẽ đếm các ô không trống (tương đương hàm COUNTA).$B$2:B2: Đây là một tham chiếu tương đối và tuyệt đối kết hợp. Khi bạn kéo công thức xuống, phần$B$2sẽ cố định, còn phầnB2sẽ thay đổi thànhB3,B4,... Điều này có nghĩa là hàm sẽ đếm số lượng dữ liệu từ ô$B$2đến ô hiện tại.- Quan trọng nhất là hàm
SUBTOTALcó một tính năng rất hay: nó chỉ đếm các dòng đang hiển thị (không bị ẩn đi bởi bộ lọc).
Vậy là khi bạn lọc dữ liệu, các dòng bị ẩn đi sẽ không được đếm, và số thứ tự sẽ tự động cập nhật, luôn luôn liên tục cho các dòng hiển thị. Quá tiện phải không ạ?
Mình thấy cách này rất hữu ích và muốn chia sẻ lại cho mọi người. Có bạn nào đã áp dụng cách này chưa, hoặc có cách nào khác hay hơn không, cùng thảo luận nhé!