Xin lỗi admin cho phép e lưu hàm này trên diễn đàn để dễ tìm kiếm và có thể giúp ích được cho 1 số bạn khác.
Nguồn thì em không rõ vì down về từ diễn đàn GPE dùng lâu rồi
Nguồn thì em không rõ vì down về từ diễn đàn GPE dùng lâu rồi

Mã:
Sub DienSTT(ByVal Ws As Worksheet, ByVal Cll1 As Range, ByVal Cll2 As Range)
''ws: sheet cân thuc hiên
''Cll1: Cell trên cùng cua vùng du liêu cân xét
''Cll2: Cell dâu tiên cua vung diên sô thu tu
Dim endCell As Range, Arr, i As Long, t As Long
With Ws
Set endCell = .Cells(Rows.Count, Cll1.Column).End(xlUp)
If endCell.Row < Cll1.Row Then Exit Sub
Arr = .Range(Cll1, endCell).Value
End With
If IsArray(Arr) = False Then
Cll2 = 1
Else
For i = 1 To UBound(Arr, 1)
If Arr(i, 1) <> "" Then
t = t + 1
Arr(i, 1) = t
End If
Next i
Cll2.Resize(UBound(Arr, 1), 1).Value = Arr
End If
End Sub
Sub STT()
With Sheets("NoiDung")
DienSTT Sheets("NoiDung"), .Range("E4"), .Range("A4")
End With
End Sub