Mình mới thay file khác;
Các em khối 10 không có môn sinh nên có điều chỉnh lần 2
Bạn tính như thế nào cho mình học hỏi với.
Mã nguồn PHP:
Option ExplicitPrivate Sub Worksheet_Change(ByVal Target As Range) If Not Intersect(Target, [H2]) Is Nothing Then Dim Sh As Worksheet, Arr() Dim Col As Byte, SS As Byte, J As Byte, HL As Byte, Dm As Double Dim MH As String MH = Left(Target.Value, 2): Sheets("TH").Select Col = Switch(MH = "To", 5, MH = "Lí", 6, MH = "Ho", 7, MH = "Si", 8, MH = "T.", 9) [B5].CurrentRegion.Offset(1, 1).ClearContents For Each Sh In ThisWorkbook.Worksheets If IsNumeric(Left(Sh.Name, 2)) Then With [B99].End(xlUp).Offset(1) .Value = Sh.Name SS = Sh.[B99].End(xlUp).Row - 5 .Offset(, 1).Value = SS Arr() = Sh.Cells(6, Col).Resize(SS).Value ReDim dArr(1 To 1, 1 To 5) As Long For J = 1 To UBound(Arr()) Dm = Arr(J, 1) HL = Switch(Dm <= 3.5, 5, Dm <= 5, 4, Dm <= 6.5, 3, Dm <= 8, 2, Dm <= 10, 1) dArr(1, HL) = dArr(1, HL) + 1 Next J .Offset(, 2).Resize(, 5).Value = dArr() End With End If Next Sh [L1].Value = UCase$(Target.Value) End IfEnd Sub