Hàm tạo số thứ tự bằng VBA (1 người xem)

  • Thread starter Thread starter hic1802
  • Ngày gửi Ngày gửi
Liên hệ QC

Người dùng đang xem chủ đề này

Status
Không mở trả lời sau này.

hic1802

Thành viên tiêu biểu
Tham gia
16/2/13
Bài viết
545
Được thích
34
Giới tính
Nam
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 :p
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
 
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 :p
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
Nó ở đây:
PHP:
https://www.giaiphapexcel.com/diendan/threads/t%E1%BA%A1o-code-copy-d%E1%BB%AF-li%E1%BB%87u-t%E1%BB%AB-sheets-n%C3%A0y-sang-d%C3%B2ng-k%E1%BA%BF-ti%E1%BA%BFp-c%E1%BB%A7a-sheets-kh%C3%A1c-kh%C3%B4ng-c%C3%B9ng-c%E1%BA%A5u-tr%C3%BAc.132398/
 
Status
Không mở trả lời sau này.
Web KT

Bài viết mới nhất

Back
Top Bottom