Giúp tạo mã học sinh (2 người xem)

Liên hệ QC

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

0167767

Thành viên hoạt động
Tham gia
10/3/12
Bài viết
141
Được thích
10
Các bạn giúp mình tạo 1 mã học sinh theo từng khối lớp, ví dụ: Lớp đầu tiên 6a1; học sinh có số thứ tự số 1 có mã 6001; em tiếp theo có mã 6002...Lớp 7a1 em đầu tiên có mã là 7001 tương tự như trên..Mong các bạn giúp dùm mình nhe
 

File đính kèm

Thứ nhất, tiêu đề nên là: "Tạo giúp mã cho các em học sinh cấp II"
Thứ hai: Bạn cho chạy macro sau:
PHP:
Sub TaoMaHSTheoKhoi()
 Dim Rws As Long, J As Long, Dm As Integer
 Dim Lop As String
 Lop = "6"
 Rws = [B6].CurrentRegion.Rows.Count
 For J = 7 To Rws + 7
    If Cells(J, "C").Value = "" Then Exit For
    If Lop = Left(Cells(J, "E").Value, 1) Then
        Dm = Dm + 1
        Cells(J, "B").Value = Lop & Right("00" & CStr(Dm), 3)
    Else
        Lop = Left(Cells(J, "E").Value, 1)
        Cells(J, "B").Value = Lop & "001"
        Dm = 1
    End If
 Next J
End Sub

Thứ ba: Mã như của bạn thì chỉ xài trong 1 năm học thôi; Sang năm lại fải lập mới
Chi bằng ta thêm 1 kí tự chỉ ra năm tạo mã luôn có hơn không:
PHP:
Sub TaoMaHSTheoKhoiCuaNam()
 Const Alf As String = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
 Dim Rws As Long, J As Long, Dm As Integer
 Dim Lop As String, Nm As String

 Nm = Mid(Alf, Year(Date) - 2010, 1)
 Lop = Nm & "6"
 Rws = [B6].CurrentRegion.Rows.Count
 For J = 7 To Rws + 7
    If Cells(J, "C").Value = "" Then Exit For
    If Right(Lop, 1) = Left(Cells(J, "E").Value, 1) Then
        Dm = Dm + 1
        Cells(J, "B").Value = Lop & Right("00" & CStr(Dm), 3)
    Else
        Lop = Nm & Left(Cells(J, "E").Value, 1)
        Cells(J, "B").Value = Lop & "001"
        Dm = 1
    End If
 Next J
End Sub
 
Lần chỉnh sửa cuối:
Các bạn giúp mình tạo 1 mã học sinh theo từng khối lớp, ví dụ: Lớp đầu tiên 6a1; học sinh có số thứ tự số 1 có mã 6001;
em tiếp theo có mã 6002...Lớp 7a1 em đầu tiên có mã là 7001 tương tự như trên..Mong các bạn giúp dùm mình nhe
Thử công thức này:

=LEFT(E7,1)&TEXT(COUNTIF($E$7:E7,LEFT(E7,1)&"*"),"000")
 
Web KT

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

Back
Top Bottom