카테고리 없음

[VBA] 엑셀 VBA 에서 반복문 사용 방법

깐적이네 2021. 1. 28. 22:20

우리가 프로그래밍을 하는 가장 큰 이유는 무엇이냐?

바로 내가 할 일을 대신 시키기 위함이 아니냐.

그 중에서 바로 가장 하기 싫은 일!!!! 단순 반복 작업!

 

컴퓨터에게 반복적인 일을 시킬 때 사용하는 함수가 바로 Loop 문이다.

Loop문에는 For Next문과 Do While문 두 가지가 있다.

 

반복적인 일을 시키는 것이기에, 시작과 끝을 알려주어야 한다.

 

 

 

For 계산횟수 변수 =시작값 To 종료값 [Step 증가값]
    [명령문]
Next [계산횟수변수]
For i = 1 To 6
    Cells(i, 1).Value = 100
Next i

 

 

그리고 만약 일정 간격으로 계산을 하는 경우에는 step을 사용한다.

여기서는 step 값에 2를 적었기 때문에, i가 1, 3, 5 씩 증가하여 반복 실행된다.

 

 

사람 일이라는것이 일차원적인 것만 있으면 좋으련만, 그렇지 않다.

안방가서 청소하고, 애들방 가서 청소하고, 화장실가서 청소하고 거실나와서도 청소를 해야한다.

이런 반복에 반복이 있는 경우처럼 For 문을 반복적으로 사용할 수 있다.

 

그럼 로봇 청소기에게 집안 구석구석 모두 청소할 때까지 계속 청소해라는 명령을 내리고 싶을 때는 어떤 반복문을 사용해야 할까? (VBA하는데 왜 자꾸 로봇 프로그래밍을 예제로 생각하는지, 개버릇 남 못 준다.)

이때 사용하는 Loop문이 While 문입니다.

 

Do While 문은 조건이 만족하는 동안은 계속 반복 동작이 일어납니다.

 

i = 1

Do While i < 6
    Cells(i, 1).Value = 20
    i = i + 1
Loop