Hỏi cách lọc danh sách giáo viên dự giờ bằng VBA. (2 người xem)

Liên hệ QC

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

thivantan

Thành viên thường trực
Tham gia
16/11/07
Bài viết
212
Được thích
431
Nghề nghiệp
Thong ke ke toan
Nhờ các bạn giúp lọc danh sách các giáo viên đã tham gia dự giờ trong tháng 1 và tháng 2, sau đó tổng hợp xem giáo viên đó trong tháng 1 và tháng 2 đã tham gia dự giờ những lớp nào? Xin chân thành cảm ơn.
 

File đính kèm

Cái này bạn dùng Advanced filter lọc là được mà sau đó dùng ghi lại macro là ra được
 
Cái này bạn dùng Advanced filter lọc là được mà sau đó dùng ghi lại macro là ra được
Cảm ơn bạn. Theo tôi hiểu nếu dùng Advanced filter thì chỉ lấy được các tên giáo viên dự giờ ở một tháng, nhưng tôi muốn lấy được danh sách giáo viên duy nhất dự giờ ở tháng 1, tháng 2 hoặc cả tháng thứ n nữa( Tên giáo viên dự giờ ở tháng 1 có thể không trùng với tháng 2) sau đó mới tổng hợp. Có thể làm thủ công thì cũng được, nhưng nếu có nhiều giáo viên và nhiều tháng thì vất vả quá, tôi nghĩ dùng VBA thì có lẽ hay hơn. Nhờ các bạn giúp đỡ. Thân
 
Muốn có VBA thì có VBA, xem cụ thể trong file đính kèm

PHP:
Option Explicit
Sub ThongKeDuGio()
 Dim Rng As Range, sRng As Range
 Dim bTh As Byte, bDS As Byte
 Dim eRw As Long
 
 Sheets("Sheet1").Select:               Set Rng = Range("B3:B15")
 Rng.Copy:                              [B17].Select
 ActiveSheet.Paste:                     Application.CutCopyMode = False
 eRw = [b65500].End(xlUp).Row
 Range("B16:B" & eRw).Select
 Selection.Sort Key1:=Range("B17"), Order1:=xlAscending, Header:=xlGuess, OrderCustom:=1
 For bTh = 1 To 12
    With Cells(3, 1 + bTh)
        Set Rng = Range(.Offset(), .End(xlDown))
    End With
    For bDS = 17 To eRw
        Set sRng = Rng.Find(Cells(bDS, "B").Value, , xlFormulas, xlWhole)
        If Not sRng Is Nothing Then
            Cells(bDS, 2 + bTh).Value = sRng.Offset(, -bTh).Value
        End If
    Next bDS
 Next bTh
End Sub
 

File đính kèm

Thật tuyệt vời. Cảm ơn bác SA_DQ rất nhiều.
 
Web KT

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

Back
Top Bottom