Menu

App script quản lý rủi ro cho cá nhân & doanh nghiệp với báo cáo chuẩn định dạng biểu đồ

Tự động hóa điền STT theo nhóm có khoảng trống xen kẽ

Hùng Quế Liên 09/04/2026 17:58 90 lượt xem 2 trả lời

Chào các anh chị em trong diễn đàn,

Dạo này mình hay phải làm báo cáo có các nhóm dữ liệu, và đôi khi các nhóm này lại cách nhau bởi một vài dòng trống. Việc điền STT thủ công cho từng nhóm rồi lại bỏ trống cho các dòng trống kia khá mất thời gian và dễ sai sót.

Mình đã thử một vài cách điền STT theo nhóm như các bài viết trên diễn đàn, nhưng với trường hợp có khoảng trống xen kẽ thì chưa thấy cách nào xử lý triệt để.

Cụ thể, mình có một bảng dữ liệu như sau:

Nhóm A

Sản phẩm 1
Sản phẩm 2

Nhóm B

Sản phẩm 3

Sản phẩm 4
Sản phẩm 5

Mình muốn kết quả STT như sau:

Nhóm A

1
2

Nhóm B

3

4
5

Có anh chị em nào có kinh nghiệm hoặc biết công thức nào (ưu tiên không dùng VBA) để giải quyết trường hợp này không ạ? Mình xin cảm ơn!

2

Tình huống của bạn khá hay gặp đấy, nhất là với các báo cáo có cấu trúc phức tạp. Mình cũng từng vật lộn với việc điền STT tự động này.

Thử xem công thức này có giúp ích không nhé:

Giả sử cột nhóm là A, cột STT là B, dữ liệu bắt đầu từ dòng 2.

Tại ô B2, bạn thử nhập công thức sau:

=IF(A2="","",IF(COUNTIF($A$2:A2,A2)=1,1,IF(A2=A1,B1+1,"")))

Công thức này sẽ:

  • Bỏ trống nếu ô A2 trống.
  • Nếu là dòng đầu tiên của nhóm (COUNTIF đếm lần đầu xuất hiện), đặt STT là 1.
  • Nếu cùng nhóm với dòng trên, tăng STT lên 1.
  • Nếu là dòng trống xen kẽ, nó sẽ tự động bỏ trống STT.

Bạn kéo công thức này xuống xem sao. Nếu có gì chưa ổn, cho mình xin thêm một vài dòng dữ liệu mẫu để xem xét kỹ hơn nhé!

5

Chào bạn,

Tình huống của bạn gặp khá phổ biến khi xử lý dữ liệu báo cáo. Về việc điền STT tự động theo nhóm có khoảng trống, mình có một cách dùng kết hợp IFCOUNTIF hoặc OFFSET cũng khá hiệu quả. Bạn có thể thử làm theo công thức này:

Giả sử dữ liệu của bạn bắt đầu từ ô A2, và cột nhóm là cột A, cột STT bạn muốn điền là cột B. Tại ô B2, bạn có thể nhập công thức:

=IF(A2="","",IF(A2A1,1,B1+1))

Sau đó kéo xuống. Công thức này sẽ reset STT về 1 khi gặp nhóm mới và tiếp tục tăng nếu vẫn trong nhóm. Với các dòng trống, nó sẽ để trống.

Bạn thử xem có áp dụng được không nhé. Nếu vẫn chưa ổn, bạn có thể chia sẻ thêm một vài dòng dữ liệu mẫu để mình xem xét kỹ hơn.

2

Bạn cần đăng nhập để trả lời chủ đề này.

Đăng nhập Đăng ký