본문 바로가기

엑셀/VBA

VBA 연산자와 제어문에 대해 알아보기 II

반응형

이전 글에서 VBA 연산자에 대해 알아봤습니다. 이번에는 제어문에 대해서 알아보겠습니다.

제어문은 프로그램의 실행 순서를 변경할 수 있는 코드로 VBA 프로그래밍을 할 때 많이 사용됩니다.

 

1. If ... Then ... Else 문

 If ... Then ... Else 문의 사용 방법은 다음과 같습니다.

 

     If 조건식 Then

          실행문1

     Else

          실행문2

     End If

 

 프로그램이 차례대로 실행되다가 If문을 만나면 주어진 조건식이 참인지 거짓인지를 확인합니다. 이면 실행문 1을 실행하고 거짓이면 실행문 2를 실행합니다.

Else와 실행문 2는 생략 가능하며 If문이 거짓일 때 Else와 실행문 2가 없으면 If문을 종료하고 다음 코딩을 실행합니다.

 

2. Select Case 문 

 Select Case 문의 구성은 다음과 같습니다.

 

     Select Case 조건식

          Case 값 1

              실행문 1

          Case 값 2

              실행문 2

                  :

                  :

          Case Else

              실행문 n

     End Select

 

프로그램이 차례대로 실행되다가 Select Case문을 만나면 주어진 조건식을 계산하여 값을 구합니다.

계산된 값과 동일한 값을 값 1, 값 2,... 값 n-1에서 찾습니다. 동일한 값이 있으면 해당하는 실행문을 실행하며 동일한 값이 없으면 실행문 n을 실행합니다.

 

3. Goto 문

 Goto 문은 다음과 같이 사용합니다.

 

     Goto 줄번호

            :

            :

     줄번호 : 실행문

            :

            :

 

Goto 문을 만나게 되면 Goto 바로 뒤에 있는 줄번호로 이동합니다. 그리고 해당 줄번호의 실행문을 실행합니다. 

 

4. For ... Next 문

For ... Next 문의 구성은 다음과 같습니다.

 

     For 변수명 = 시작 값 To 종료 값 Step 증감

                  실행문

     Next 변수명

 

 For 문을 만나면 변수명으로 이름 지은 변수를 생성하고 시작 값을 입력합니다. 그리고 실행문을 실행합니다. 실행문이 완료되면 변수의 값을 증감에 따라 변경하고 변수에 그 값을 입력하고 실행문을 실행합니다. 변숫값이 종료 값이 될 때까지 반복 실행하며 변숫값이 종료 값과 같아지면 For ... Next 문을 빠져나와 다음 코드를 진행합니다.

5. For Each ... Next 문

 For Each ... Next 문은 다음과 같이 사용합니다.

 

     For Each 개체형 변수 In 컬렉션

                  실행문

     Next 개체형 변수

 

 컬렉션은 배열처럼 유사한 개체들을 모아놓은 데이터 형식의 일종으로 개체형 변수컬렉션과 같은 데이터 형식을 지녀야 합니다.

컬렉션에 있는 요소들을 개체형 변수가 참조할 수 있도록 지정한 후 실행문을 실행하며 컬렉션의 요소를 모두 참조하면 For Each ... Next 문은 종료됩니다.

 

6. Do ... Loop 문

 

 Do ... Loop 문의 사용방법은 4가지 방식이 있으며 그 구성은 다음과 같습니다.

 

 ① Do While ... Loop

 

     Do While 조건식

             실행문

     Loop

 

   조건식이면 실행문이 실행됩니다. 만약 처음 Do문을 만났을 때 조건식거짓이면 실행문은 실행되지 않고 Do While문은 종료됩니다.

 

② Do Until ... Loop

 

     Do Until 조건식

             실행문

     Loop

 

   조건식이 될 때까지 반복해서 실행문이 실행됩니다. 만약 처음 Do문을 만났을 때 조건식이면 실행문은 실행되지 않고 Do Until문은 종료됩니다.

 

③ Do ... Loop While

 

     Do

             실행문

     Loop While 조건식

 

   조건식이면 실행문이 실행됩니다. 만약 처음 Do문을 만났을 때 조건식거짓이면 실행문은 한 번 실행되고 Do While문은 종료됩니다.

 

④ Do ... Loop Until

 

     Do

             실행문

     Loop Until 조건식

 

   조건식이 될 때까지 반복해서 실행문이 실행됩니다. 만약 처음 Do문을 만났을 때 조건식이면 실행문은 한 번 실행되고 Do Until문은 종료됩니다.

반응형