VBA-从周课表统计节次

Sub datainsert()

    Dim r1 As Integer, r2 As Integer, i As Integer, j As Integer, findrow As Integer, findMonth As Integer, tday As Integer
    
    findMonth = Range("h1")
    Set Source = Worksheets("总周课表")
    
    Set t = ActiveSheet
    
    r1 = Source.Range("a65536").End(xlUp).Row
    
    '开始循环
    
    For i = 2 To r1
        
        xm = Source.Cells(i, 8)
        kc = Source.Cells(i, 7)
        jc = Source.Cells(i, 6)
        rq = Source.Cells(i, 4)
        bc = Source.Cells(i, 3)
        dd = Source.Cells(i, 9)
    
        '比较日期
        If Format(rq, "M") = findMonth Then
        
        r2 = t.Range("c65536").End(xlUp).Row
        If (r2 < 3) Then r2 = 3
        
        tday = Format(rq, "d") + 7 '后移7个单元格
        
            findrow = 0
        
            For j = 3 To r2
                
                If t.Cells(j, 3) = xm Then
                    findrow = j
                    Exit For
                End If
            
            Next
            
            If (findrow > 0) Then '找到
            
            t.Cells(findrow, tday) = Cells(findrow, tday) & " " & jc
            
            
            Else '没找到直接添加
            
              t.Cells(r2 + 1, 3) = xm
                t.Cells(r2 + 1, 4) = kc
                t.Cells(r2 + 1, 6) = bc
                t.Cells(r2 + 1, 39) = dd
                t.Cells(r2 + 1, tday) = jc
            
            End If
           End If
    Next

End Sub
 
原文地址:https://www.cnblogs.com/lunawzh/p/7506934.html