Appia의 IT세상

비주얼베이직(Visual Basic, VBA) 반복문 살펴보기 01(for-loop, for-each loop) 본문

Programming/VisualBasic_VBA

비주얼베이직(Visual Basic, VBA) 반복문 살펴보기 01(for-loop, for-each loop)

Appia 2020. 12. 2. 07:04
반응형

비주얼베이직(Visual Basic, VBA) 반복문 살펴보기 01(for-loop, for-each loop)

비주얼베이직(Visual Basic, VBA) 반복문 살펴보기 01(for-loop, for-each loop)

앞선 포스팅에서는 조건문 즉, 특정 조건에 맞춰서 동작할 수 있게 하는 분기문에 대해서 이야기를 해봤습니다. 이번 포스팅에서는 앞선 분기문과 가장 많이 사용되는 반복문에 대해서 이야기를 해보고자 합니다. 먼저 반복문이라 함은 특정 조건 또는 횟수내지 범위를 지정하여 계속 반복하게 하는 것을 반복문이라고 합니다. 이번 포스팅은 그중에서도 가장 많이 사용하는 for문 위주로 살펴보도록 하겠습니다. 

비주얼베이직(Visual Basic, VBA) 조건문, 분기문 살펴보기(if, elseif, else, switch)

 

비주얼베이직(Visual Basic, VBA) 조건문, 분기문 살펴보기(if, elseif, else, switch)

비주얼베이직(Visual Basic, VBA) 조건문, 분기문 살펴보기(if, elseif, else, switch) 이번 포스팅에서는 조건문 즉, 분기문이라고 불리우는 조건문에 대해서 이야기를 해볼까 합니다. 먼저 조건문,

appia.tistory.com

 

크게 for문의 경우 다음과 같이 총 2가지 형태가 존재합니다. 

 

1. for loop문

가장 흔히 사용되면, 특정 횟수까지 반복이 필요로 할때 사용되는 것입니다. 예를 들면 제가 커피 자판기에서 커피를 사기 위해서 동전을 넣는다고 하겠습니다. 커피값은 300이라고 가정하면 100원짜리 동전을 3회 넣어야 합니다. 이와 같이 3회 반복을 하기 위해서 for문을 사용합니다. 

 

2. for .. each loop문

배열등과 같이 여러개를 맴버를 가지고 있는 변수에 각 맴버들마다 특정 동작을 시킬 때, for .. each loop문을 사용합니다. 가장 쉽게 이야기해보면 우리팀 사람들 모두에게 본인 이름을 적어 제출하게 할 때 사용하는 반복문이라고 생각하시면 됩니다. 

 

그럼 각 부분에 대해서 살펴보도록 하겠습니다. 

 

1. for loop문

먼저 for문의 문법부터 살펴보겠습니다. 

For counter = start To end [Step stepcount]

   [statement 1]

   [statement 2]

   ....

   [statement n]

Next

위와 같이 start와 end을 입력하고, Step의 경우 Optional하게 사용하시면 됩니다. 즉 그럼 start 값에서 시작하여 end값까지 step단위로  반복합니다. step값을 입력하지 않으시면 1로 동작합니다. 그럼 간단히 다음 예시를 적용하여 살펴보겠습니다. 

1
2
3
4
5
6
7
8
Private Sub for_example()
   Dim a As Integer
   a = 10
   
   For i = 0 To a Step 2
      MsgBox ("For문 예제 이 값은 " & i)
   Next
End Sub
cs

 

위의 코드를 실행 결과는 다음과 같습니다. 물론, 4, 6,8도 있지만 관련해서는 생략을 하였습니다. 즉 다음과 같이 계속적으로 순차적으로 메시지 박스가 나타납니다. 

for문 실행 결과 

2. for .. each loop문

for .. each loop문의 문법을 먼저 살펴보겠습니다. 

For Each element In Group

   [statement 1]

   [statement 2]

   ....

   [statement n]

Next

이와 같이 그룹내에 반복할 때 사용하는 것으로 관련된 예시를 작성해보도록 하겠습니다. 

1
2
3
4
5
6
7
8
9
10
11
Private Sub for_each_example()
   firstName = Array("김""최""이")
   Dim first As Variant
 
   For Each Item In firstName
      first = first & Item & Chr(10)
   Next
   
   MsgBox (first)
End Sub
 
cs

 

위의 코드를 실행하면 다음과 같은 결과가 나타납니다. 즉 각 성들이 포함된 부분이 메시지 박스에 표현이 됩니다. 

 for .. each loop문 실행 결과 

 

이번 포스팅에서는 비주얼베이직(Visual Basic, VBA) 반복문 살펴보기 01(for-loop, for-each loop)라는 주제로 for문 위주로 살펴봤습니다. 혹 궁금하신 점이나 문의 사항이 있으시면 언제든지 댓글 및 방명록에 글 남겨주시길 바랍니다. 감사합니다. 

 

 

반응형
Comments