Chào các bác, hôm nay em muốn chia sẻ một chút kinh nghiệm về việc tự động đánh số thứ tự theo nhóm, nhưng có một chút biến tấu so với các cách mà em thấy trên diễn đàn. Thông thường, mình hay dùng các công thức như SUBTOTAL, IF, hoặc FILTER kết hợp SEQUENCE để đánh số STT theo nhóm. Tuy nhiên, đôi khi mình cần đánh số STT theo nhóm nhưng lại muốn có một khoảng trống (ví dụ 1 dòng trống) sau mỗi nhóm để dễ nhìn hơn.
Ví dụ, dữ liệu của em trông như thế này:
Nhóm A STT 1 STT 2 Nhóm B STT 1 STT 2 STT 3 Nhóm C STT 1
Em đã thử nhiều cách nhưng chưa ra được công thức ưng ý. Sau một hồi mò mẫm, em đã nghĩ ra một cách kết hợp IF, ROW, OFFSET và COUNTIF để làm được điều này. Về cơ bản, em sẽ dùng COUNTIF để đếm số lần xuất hiện của nhóm hiện tại cho đến dòng đó. Sau đó, dùng IF để kiểm tra xem đó có phải là dòng đầu tiên của nhóm mới không. Nếu đúng, em sẽ reset STT về 1. Điểm khác biệt là em sẽ thêm một điều kiện nữa để tạo ra dòng trống nếu cần.
Cụ thể, nếu bạn có dữ liệu bắt đầu từ cột A (nhóm) và cột B (STT mong muốn), công thức cho cột B (từ B2 trở đi, giả sử B1 trống) có thể trông như sau:
=IF(A2=