728x90

네이버 지식인에 올라온 자료를 정리해 본 것입니다.

연속된 15의 개수, 5의 개수, 0의 개수, 10의 개수가 반복횟수 기준으로 얼마나 되는지 구하는 경우입니다.





연속숫자구하기.xlsm



Sub 연속숫자개수구하기()
    Dim rngC, rngT  As Range
    Dim rngAll As Range
    Dim rngVariable As Range  '// 변하는 영역변수
    Dim i As Double  
   
    For Each rngC In Range([B2], Cells(Rows.Count, "B").End(3))
        If rngC <> rngC.Offset(1) Then
            i = 0
            rngC.Offset(, 1) = rngC.Offset(-1, 1) + 1
            rngC.Offset(, 2) = rngC
        Else
            i = i + 1
            rngC.Offset(, 1) = i
        End If
    Next rngC
   
    Set rngT = [D2].End(4)  '// D2 셀로부터 아래로 내려오면서 처음 값이 있는 셀
    For Each rngC In Range([D2], Cells(Rows.Count, "D").End(3))
        Set rngVariable = Range(rngT, rngC)
        If Not IsEmpty(rngC) Then
            rngC.Offset(0, 1) = Application.CountIf(rngVariable, rngC)
        End If
    Next rngC
   
    MsgBox "완료"
   
End Sub


Sub 값채우기()
    Dim rngC  As Range
    Dim i, n, lastCell As Double
   
    lastCell = Cells(Rows.Count, "J").End(3).Row
   
    For i = 1 To lastCell
        For n = 1 To 4
            For Each rngC In Range([E2], Cells(Rows.Count, "E").End(3))
                If Not IsEmpty(rngC) Then
                    If rngC = Cells(i + 3, "J") Then
                        If rngC.Offset(, -1) = Cells(3, n + 10) Then
                            Cells(i + 3, n + 10) = rngC.Offset(, -2)
                        End If
                    End If
                End If
            Next rngC
        Next n
    Next i
    MsgBox "완료"
   
End Sub










블로그 이미지

Link2Me

,