Do 반복문은 크게 두 가지로 나눕니다. Do While 과 Do Until 입니다. Do Until 은 사용자가 지정한 조건이 참이 될 때 까지 내부에 코드를 반복하는 구문입니다. Do While 은 반대로 거짓이 될 때까지 반복합니다. Do 반복문은 구조적으로 다시 두 가지로 나눕니다. Do Until ~ Loop 와 Do ~ Loop Until 이 그것입니다.
* 실전 연습을 위한 작업파일이 필요하다면 아래 파일을 다운받으세요.
▼ Do While Loop 문은 아래 포스팅을 참고하세요.
엑셀 VBA 반복문 Do While 사용하기
흔히 반복문을 처리할 때 For 문을 이용하는데, 반복횟수가 아닌 특정조건을 만족할 때까지 작업하고 싶은 경우에는 Do While 을 사용합니다. 만약 조건을 잘못 입력해서 만족하는 경우의 수가 나
mainia.tistory.com
◎ Do Until Loop 사용하기 |
▼ Do Until ~ Loop 의 구분은 다음과 같습니다. 조건문이 Do Until 구문 바로 다음에 나옵니다. 반복할 구문은 Do Until 과 Loop 안에 삽입합니다.
Do Until 조건문 반복코드 Loop |
▼ 샘플은 val 값이 100을 넘는 101 이 될 때까지 내부 코드를 반복합니다. Do Until 구문에 의해 val > 100 이 참이 될 때까지 반복하기 때문입니다.
Sub DoUntilLoopSum()
' 변수지정
Dim val As Integer
Dim sum As Integer
Do Until val > 100
val = val + 1
sum = sum + val
Loop
MsgBox sum
End Sub

※ 아래는 참고하면 좋을 만한 글들의 링크를 모아둔 것입니다. ※ ▶ 엑셀 VBA 반복문 For Next 문 사용하기 ▶ 엑셀 VBA 반복문 For Next, For Each Next 사용하기 ▶ 엑셀 VBA 반복문 Do While 사용하기 ▶ 엑셀 VBA 반복문으로 여러 컨트롤 한번에 제어하기 ▶ 엑셀 VBA For Each 반복문 이용해서 셀 영역 병합 및 합계 구하기 |
◎ Do Loop Until 사용하기 |
▼ Do ~ Loop Until 은 위에서 알아본 Do Until ~ Loop 와 달리 조건문이 뒤에 옵니다. 구문의 특성상 무조건 한번은 실행되는 구조입니다. 반복문은 Do 와 Loop Until 사이에 삽입합니다.
Do 반복문 Loop Until 조건문 |
▼ 샘플 소스는 다음과 같습니다. 조건에 해당하는 Until val > 100 코드를 Loop 조건문 뒤로 옮깁니다. 결과값은 같습니다.
Sub DoUntilLoopSum()
' 변수지정
Dim val As Integer
Dim sum As Integer
Do
val = val + 1
sum = sum + val
Loop Until val > 100
MsgBox sum
End Sub

※ 아래는 참고하면 좋을 만한 글들의 링크를 모아둔 것입니다. ※ ▶ 엑셀 VBA 반복문 For Next 문 사용하기 ▶ 엑셀 VBA 반복문 For Next, For Each Next 사용하기 ▶ 엑셀 VBA 반복문 Do While 사용하기 ▶ 엑셀 VBA 반복문으로 여러 컨트롤 한번에 제어하기 ▶ 엑셀 VBA For Each 반복문 이용해서 셀 영역 병합 및 합계 구하기 |
댓글을 달아 주세요