안녕하세요, 이번포스팅부터는 vba 초심으로 돌아가서 기본기를 공부하는 포스팅을 올려보려합니다.
vba에서 자주 쓰이는 for 반복문에 대해서 예시와 함께 알아보겠습니다.
너무 깊은 내용은 아니니, 편하게 봐주시면 감사하겠습니다. 만약 잘못 된 부분이 있거나 수정해야 되는 부분이 있으면 편하게 댓글주시면 수정 하도록 하겠습니다.
For Next문
For Next문은 특정 조건이 만족될 때 까지 for 와 next 사이의 구문을 반복적으로 실행하는 구문입니다.
기본 적인 구조는 다음과 같습니다.
For counter = start To end [Step Step]
반복할 구문 [statements]
Next [counter]
(counter는 반복을 제어하는 변수를 타나냅니다. 보통 i,j,k,...등으로 많이들 쓰시죠)
For Next문 숫자 카운트
Sub 숫자카운트()
Dim i As Integer
For i = 1 To 5
Cells(i, 1).Value = "숫자" & i
Next i
End Sub
위 코드를 한번 뜯어서 설명해보겠습니다.
1. 서브루틴은 숫자카운트 라 선언하겠습니다.
2. i (counter)를 정수(Integer)로서 변수 설정하겠습니다. (Long으로 해도 상관없습니다.)
3. For 문을 시작합니다.
3-1. For i (counter) = 1 To 5 : i 는 1에서 시작해서 5까지 반복하겠습니다.
4. Cells(i, 1).Value = "숫자" & i
4-1 엑셀 첫번째 열(A)에 있는 i 번째 행의 셀 값을 채웁니다. 각 셀에 채워지는 값은 "숫자"라는 텍스트와 i 의 값이 결합된 텍스트로 입력합니다.
4-2 Cells(row,column)을 나타냅니다. 즉, Cells(1,1), Cells(2,1), Cells(3,1), Cells(4,1), Cells(5,1)까지 반복하겠다 입니다.
5. Next i 로 For문을 끝냅니다. Next i 에서 i는 생략해도됩니다.
6. End Sub 서브루틴 종료합니다.
For 반복문의 중요 포인트
1, 반복제어 변수
"For" 구문에서 선언된 변수는 Statements 의 각 반복에서 자동으로 업데이트 됩니다.
Dim으로 선언한 모든 변수들
2, Step 사용
For문의 선택인수로서 counter의 크기를 증가 시킬 수 있습니다.
예를 들면, For i = 1 To 5 Step 2 를 입력하면 1,3,5 값만 i counter로서 사용 됩니다.
3. 반복문 중첩
For 반복문 내에 다른 For 반복문을 중첩하여 사용 할 수 있습니다.
예시
Sub 반복예시()
Dim i As Integer, j As Integer
For i = 1 To 3
For j = 1 To 3
Cells(i, j).Value = "Cell " & i & "," & j
Next j
Next i
End Sub
여기서 많이 놓치시는게 for i 가 먼저왔으니 반복문 종료도 next i 로 종료 되야합니다.
4. 반복문 종료 (Exit For)
Exit For를 For문 내에 넣어서 For문을 미리 종료 하거나 탈출하는데 사용 할 수 있습니다.
예시
Sub 탈출예시()
Dim i As Integer
For i = 1 To 10
If i = 6 Then
Exit For
End If
Debug.Print "Number is: " & i
Next i
End Sub
If 문에서 i counter가 6이 되면 For 문을 나와라 그리고 For문을 종료해라 라는 구문입니다.
즉, 1부터 5까지만 출력됩니다.
포스팅에서 사용된 파일을 원하실 경우 댓글주시면 답변 드리겠습니다.
도움이 되셨다면 좋아요 와 댓글은 저에게 큰 힘이 됩니다 😀
'엑셀공부 > VBA 하루에 하나씩' 카테고리의 다른 글
엑셀 VBA 기초 END 속성 ROWS.COUNT (0) | 2024.07.07 |
---|---|
엑셀 VBA 기초 RANGE, CELLS 셀 선택하기 (2) | 2024.06.30 |
엑셀 마지막 행 값 가져오기 함수와 매크로 VBA 방법 알아보기 (5) | 2023.12.13 |
엑셀 다른 값 끼리 셀 색상 구분하기 VBA 매크로 활용 (0) | 2023.09.14 |
엑셀 매크로 차단 해제 매크로 세팅 방법 EXCEL VBA (0) | 2022.10.09 |