728x90

중간 중간의 셀이 빈 공백으로 되어 있는 경우 끝까지 번호를 매기려면 마우스로 Drag 하여 죽 끌고가거나 약간의 편법을 써야 하는 불편함이 있다.

이짓도 하다보니 좀 귀찮아서 간단하게 VBA 로

For Each Next 구문을 이용하여 만들었다.

rngC 는 반복하는 셀이고, rngC.Offset(0,2) 는 현재셀로부터 Offset(행,열) 즉, 행과 열만큼 이동하라는 의미다.

Offset(0,2) 는 행은 이동하지 말고, 열만 오른쪽으로 두번 이동하라는 의미이므로

rngC 셀이 A열에서 변동되므로 기록될 값은 C열에 기록된다.


Sub 번호매기기()
    Dim rngC As Range
    Dim i As Long
    For Each rngC In Range([A2], Cells(Rows.Count, "A").End(3))
        i = i + 1
        rngC.Offset(0, 2) = i
    Next rngC
End Sub


여기서 한가지 더 알아두면 좋은 사항은

rngC.Offset(0,2) 라는 것이 얼른 눈에 들어오지 않을 수도 있다.

이럴 경우에는 Cells(rngC.Row, "F") 와 같은 식으로 바꿔서 쓸수도 있다.

F열에 값을 기록한다는 것이므로 눈에 쉽게 들어온다.


하다보니 이것도 귀찮아서 더 편한 방법을 찾아서 적어둔다.

Sub 번호매기기()
    Dim rngC As Range
    Dim i As Long
    Dim sRow As Long
    Dim Col As String
   
    sRow =   '// 시작할 행
    Col = "A"   '// 지정할 열
    For Each rngC In Range(Cells(sRow, Col), Cells(Rows.Count, Col).End(3))
        i = i + 1
        Cells(rngC.Row, "O") = i
    Next rngC
End Sub

블로그 이미지

Link2Me

,