Làm sao viết code để điền số thứ tự cho từng người (1 người xem)

Liên hệ QC

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

Huyen Pru

Thành viên mới
Tham gia
18/4/12
Bài viết
7
Được thích
1
Dear các bạn,

Mình là thành viên mới, mình không biết viết code như thế nào để chạy cho report vào đầu tháng, nên mình thường làm manual, pls các bạn giúp hộ mình với nhé. Thanks all.

Vấn đề cần giải quyết: Làm sao để điền số thứ tự cho từng người, ví du:

Cô:LÊ THỊ THÚY NGA có 7 lớp dạy
Cô : NGUYỄN THỊ HỒNG có 5 lớp dạy
.....

Mong nhận được sự hỗ trợ của các bạn.
 

File đính kèm

Dear các bạn,

Mình là thành viên mới, mình không biết viết code như thế nào để chạy cho report vào đầu tháng, nên mình thường làm manual, pls các bạn giúp hộ mình với nhé. Thanks all.

Vấn đề cần giải quyết: Làm sao để điền số thứ tự cho từng người, ví du:

Cô:LÊ THỊ THÚY NGA có 7 lớp dạy
Cô : NGUYỄN THỊ HỒNG có 5 lớp dạy
.....

Mong nhận được sự hỗ trợ của các bạn.
Chưa rõ ý lắm nhưng đoán làm như thế này. Không cần dùng code
- Tại A2 bạn nhập công thức: =--RIGHT(B2;LEN(B2)-2)
- Dùng Autofil lọc cột B với điều kiện là NonBlank
- Copy công thức tại A2
- Quét chọn cột A và dán công thức
- Thoát Autofil có được kết quả
 
Bạn thử code này xem (chuyển tên giáo viên cột A qua cột B lun nhé bạn)
PHP:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Mid(Target.Address, 2, 1) = "B" Then DemSoThuTu
End Sub
Sub DemSoThuTu()
Dim i As Long, sArray, Arr1()
With ActiveSheet
    .Range("A2:A65536").ClearContents
    sArray = .Range(.[B2], .[B65536].End(xlUp)).Resize(, 1).Value
    ReDim Arr1(1 To UBound(sArray, 1), 1 To 3)    
For i = 1 To UBound(sArray, 1)
    If sArray(i, 1) <> "" And UCase(Left(sArray(i, 1), 2)) = "LT" Then
        n = n + 1
        Arr1(i, 1) = n
    ElseIf sArray(i, 1) <> "" And UCase(Left(sArray(i, 1), 2)) = "TT" Then
        m = m + 1
        Arr1(i, 1) = m
    ElseIf sArray(i, 1) <> "" And UCase(Left(sArray(i, 1), 2)) = "AV" Then
        k = k + 1
        Arr1(i, 1) = k
    End If
Next
.Range("A2").Resize(i - 1, 1).Value = Arr1
End With
End Sub
 

File đính kèm

Dear các bạn,

Mình là thành viên mới, mình không biết viết code như thế nào để chạy cho report vào đầu tháng, nên mình thường làm manual, pls các bạn giúp hộ mình với nhé. Thanks all.

Vấn đề cần giải quyết: Làm sao để điền số thứ tự cho từng người, ví du:

Cô:LÊ THỊ THÚY NGA có 7 lớp dạy
Cô : NGUYỄN THỊ HỒNG có 5 lớp dạy
.....

Mong nhận được sự hỗ trợ của các bạn.
Với kiểu dữ liệu như của bạn thì dùng code này thử xem.
PHP:
Public Sub STT()
Dim n As Long, I As Long
For I = 1 To Sheet1.[B65000].End(xlUp).Row
    If Not IsNumeric(Cells(I, 1)) Then
        n = 0
    Else
        n = n + 1
        Sheet1.Cells(I, 1) = n
    End If
Next
End Sub
 
Thanks bạn nghen, mình đã áp dụng được vào report rồi. Cách bạn viết gọn, và mình thấy rất ok. Thanks again.
 
Web KT

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

Back
Top Bottom