Chỉnh sửa code đánh số thứ tự

Liên hệ QC
Tôi tuân thủ nội quy khi đăng bài

tuan16

Thành viên thường trực
Tham gia
28/11/13
Bài viết
269
Được thích
18
Em có sưu tầm được đoạn code đánh số thứ tự tự động..hiện tại khi dữ liệu ở cột C thì đoạn code sẽ tự động đánh số thứ tự ở cột A bắt đầu từ 1 … Em xin nhờ anh chị trong diễn đàn chỉnh sửa đoạn code để có thể chọn được vùng chứa dữ liệu và vùng đánh số thứ tự với ạ. ví dụ dữ liệu ở cột K và muốn chọn vùng đánh số thứ tự ở cột H thì khi kích vào nút button 1 sẽ hiện lên 2 vùng để mình lựa chọn ạ, dạng như hình em có đính kèm trong file excell ạ " Chọn vùng tham chiếu" thay bằng "chọn vùng dữ liệu:", "chọn vùng công thức" thay bằng" chọn vùng đánh số thứ tự"
 

File đính kèm

  • nho gpe.xlsm
    23.2 KB · Đọc: 8
Lần chỉnh sửa cuối:
Em có sưu tầm được đoạn code đánh số thứ tự tự động..hiện tại khi dữ liệu ở cột C thì đoạn code sẽ tự động đánh số thứ tự ở cột A bắt đầu từ 1 … Em xin nhờ anh chị trong diễn đàn chỉnh sửa đoạn code để có thể chọn được vùng chứa dữ liệu và vùng đánh số thứ tự với ạ. ví dụ dữ liệu ở cột K và muốn chọn vùng đánh số thứ tự ở cột H thì khi kích vào nút button 1 sẽ hiện lên 2 vùng để mình lựa chọn ạ, dạng như hình em có đính kèm trong file excell ạ " Chọn vùng tham chiếu" thay bằng "chọn vùng dữ liệu:", "chọn vùng công thức" thay bằng" chọn vùng đánh số thứ tự"
Nó không lên được form có được không?
Nếu được, tham khảo code trong file đính kèm
 

File đính kèm

  • nho gpe.xlsm
    25.3 KB · Đọc: 7
Upvote 0
Thời đại của AI, mình test thử một bài AI thì thấy cũng được đấy bạn

Mã:
Sub call_stt()
    Dim DataRange As Range, NumberingRange As Range
    Dim DataArr, NumberArr()
    Dim i As Long, N As Long
    Dim ws As Worksheet
    
 
    On Error Resume Next
    Set DataRange = Application.InputBox("Chon vùng du lieu:", Type:=8)
    On Error GoTo 0
    
    If DataRange Is Nothing Then Exit Sub
    

    On Error Resume Next
    Set NumberingRange = Application.InputBox("Chon vùng dánh so thu tu:", Type:=8)
    On Error GoTo 0
    
    If NumberingRange Is Nothing Then Exit Sub
    
    DataArr = DataRange.Value
    
    ReDim NumberArr(1 To UBound(DataArr, 1), 1 To 1)
    
    N = 0
    
    For i = 1 To UBound(DataArr, 1)
        If DataArr(i, 1) <> "" Then
            N = N + 1
            NumberArr(i, 1) = N
        End If
    Next i
    

    NumberingRange.Value = NumberArr
    
End Sub
Cách sử dụng:
Chọn vùng dữ liệu và vùng đánh số thứ tự phải khơp với nhau
VD:
Vùng dữ liệu: C13:C5000
Vùng đánh số thứ tự phải khớp y vậy
nếu chọn A thì :A13:A5000
nếu chọn B thì :B13:B5000
 
Upvote 0
Thời đại của AI, mình test thử một bài AI thì thấy cũng được đấy bạn

Mã:
Sub call_stt()
    Dim DataRange As Range, NumberingRange As Range
    Dim DataArr, NumberArr()
    Dim i As Long, N As Long
    Dim ws As Worksheet
   
 
    On Error Resume Next
    Set DataRange = Application.InputBox("Chon vùng du lieu:", Type:=8)
    On Error GoTo 0
   
    If DataRange Is Nothing Then Exit Sub
   

    On Error Resume Next
    Set NumberingRange = Application.InputBox("Chon vùng dánh so thu tu:", Type:=8)
    On Error GoTo 0
   
    If NumberingRange Is Nothing Then Exit Sub
   
    DataArr = DataRange.Value
   
    ReDim NumberArr(1 To UBound(DataArr, 1), 1 To 1)
   
    N = 0
   
    For i = 1 To UBound(DataArr, 1)
        If DataArr(i, 1) <> "" Then
            N = N + 1
            NumberArr(i, 1) = N
        End If
    Next i
   

    NumberingRange.Value = NumberArr
   
End Sub
Cách sử dụng:
Chọn vùng dữ liệu và vùng đánh số thứ tự phải khơp với nhau
VD:
Vùng dữ liệu: C13:C5000
Vùng đánh số thứ tự phải khớp y vậy
nếu chọn A thì :A13:A5000
nếu chọn B thì :B13:B5000
Dạ em cảm ơn anh chị ạ... code hoạt động như mong muốn ạ
Bài đã được tự động gộp:

Nó không lên được form có được không?
Nếu được, tham khảo code trong file đính kèm
dạ em cảm ơn ạ
 
Upvote 0
Web KT
Back
Top Bottom