스킬캠퍼스
5강 · 조건과 반복
강의

오늘 끝나면

조건과 반복

  • 조건과 반복의 핵심 문제를 한 문장으로 설명한다
  • 오른쪽 실습에서 조건과이 어떻게 움직이는지 관찰한다
  • 다음 강의와 이어지는 한계를 말할 수 있다

실습 미션

If·For·Do While — 판단하고 반복 이 문장이 실제로 무슨 뜻인지 실습에서 한 번 손으로 확인한다.

성공 조건

  • 실습의 기본값을 먼저 관찰
  • 입력값이나 모드를 한 번 이상 바꿔 결과 비교
  • 왜 결과가 바뀌었는지 한 문장으로 설명

엑셀 VBA · 05

조건과
반복

If로 판단하고 For로 반복함.
이 둘이 자동화의 두 다리임.
행을 훑으며 조건을 처리하면 1000행도 한순간.

P.01엑셀 VBA · 05

If…Then…Else로 판단한다

코드가 똑똑해 보이는 건 갈림길에서 스스로 고르기 때문임. 그 갈림길이 If임.

모양은 단순함. If 조건 Then ~ 참이면 할 일 ~ End If로 닫음.
엇갈린 경우까지 처리하려면 사이에 Else를 끼움.

조건은 비교임. >=, <=, =, <>(다름)로 두 값을 견줌.
여러 조건은 And · Or로 묶음.
결과는 참(True) 아니면 거짓(False), 딱 둘뿐임.

조건이 참이면 한쪽 · 거짓이면 다른 쪽
If…Then…Else — 갈림길
If 점수 >= 60 Then
    결과 = "합격"
Else
    결과 = "불합격"
End If
조건 — 점수 >= 60 ?
참(True)
합격
거짓(False)
불합격

결과는 둘 중 하나로만 갈림

P.02엑셀 VBA · 05

For·Do While로 반복한다

판단을 한 번 잘 적어도, 행이 1000개면 1000번 적을 순 없음. 그래서 반복문이 있음.

횟수를 알 땐 For임. For i = 1 To 10 ~ Next i i를 1·2·3…10까지 자동으로 올림.
Step 2를 붙이면 2칸씩, Step -1이면 거꾸로 셈.

몇 번일지 모르고 “~인 동안” 돌릴 땐 Do While 조건 ~ Loop임.
데이터 끝까지(빈 칸 나올 때까지) 훑는 데 자주 씀.
어느 쪽이든 핵심은 같음 — 같은 코드 한 덩이를 컴퓨터가 알아서 여러 번 굴림.

같은 일을 몇 번이고 · 사람 대신
For vs Do While — 두 가지 반복
For…Next횟수를 알 때
For i = 1 To 5
    ' i = 1,2,3,4,5
Next i
12345
Do While…Loop조건이 참인 동안
Do While Cells(i,1) <> ""
    i = i + 1   ' 빈 칸 전까지
Loop

몇 번일지 모를 때 — 데이터 끝까지

P.03엑셀 VBA · 05

행을 훑으며 조건을 처리한다

실무 자동화의 90%가 이 한 패턴임. 반복으로 행을 훑고, 그 안에서 If로 골라냄.

오른쪽에서 직접 돌려봄.
For i = 1 To 8이 행을 한 칸씩 내려가고, 각 행에서 If Cells(i,1) >= 기준이 참인 셀만 칠함.
연산자와 기준값을 바꾸면 같은 루프가 다른 행을 골라냄.

[▶ 한 행씩]으로 i가 내려가며 판단하는 걸 보고, [⏭ 끝까지]로 루프 전체를 한 번에 굴려봄.
이게 합격자 표시·미입력 찾기·금액 합산 같은 일을 만드는 뼈대임.

For로 행을 돌고 · If로 골라낸다 (직접 실행)
미니 For 루프 · 행을 훑어 조건 처리
For i = 1 To 8
  If Cells(i,1) >= 70 Then 표시
  End If
Next i
If 조건 — 비교 연산자
기준값 — 70
A열 (Cells)i = –
A1
88
A2
42
A3
95
A4
60
A5
73
A6
30
A7
81
A8
55

For 루프가 1행부터 한 칸씩 내려가며 모든 행을 자동으로 훑음. 손으로 8번 볼 걸 코드가 한 번에.

P.04엑셀 VBA · 05

조건과 반복은 자동화의 핵심 도구

왜 굳이 코드로 적나? 눈으로 보고 칠하면 되는데.
답은 규모와 반복임.

8행이면 손이 빠름. 근데 8000행이면? 매주 새로 들어오는 시트면?
For + If를 한 번 적어두면, 행이 몇 개든 매크로 버튼 한 번에 끝남.

반복은 지치지도 빠뜨리지도 않음. 조건은 틀린 기준 없이 똑같이 판단함.
앞 강의 Dim(변수) · Cells(셀 제어)에 이 둘을 얹으면, 비로소 “사람이 하던 반복 작업”을 코드가 대신함.

손으로 8번 → 코드로 한 번
한 번 적은 규칙 · 반복은 컴퓨터가
손으로
한 행 직접 확인
한 행 직접 확인
한 행 직접 확인
한 행 직접 확인
한 행 직접 확인
한 행 직접 확인

8000행이면 불가능

For + If로
루프 한 번 적기
컴퓨터가 대신
컴퓨터가 대신
컴퓨터가 대신
컴퓨터가 대신
컴퓨터가 대신
컴퓨터가 대신

8000행도 버튼 한 번

P.05엑셀 VBA · 05

한 줄로 정리

오늘 둘만 챙기면 됨. If = 판단, For/Do While = 반복.

판단이 필요하면 If…Then…Else…End If.
횟수를 알면 For…Next, 모르면 Do While…Loop.

그리고 둘을 겹쳐 행을 훑으며 골라내는 패턴 — 이게 6강에서 배울 Sub·함수로 깔끔하게 묶일 재료임.

Q. 1000개 행을 똑같은 규칙으로 처리해야 함. 무엇을 씀? (① 행마다 코드 1000줄 ② 반복문 한 번 ③ Else만으로 ④ 손으로 클릭)정답은 ② 반복문 한 번임.
For i = 1 To 1000 안에 If 판단을 한 덩이 적으면, 행이 몇 개든 같은 코드가 자동으로 1000번 굴러감.
코드를 1000줄 베껴 쓰거나 손으로 클릭하는 건 반복문이 막아주는 바로 그 노동임.
If는 갈림길 · For는 바퀴
오늘의 도구
키워드하는 일
If…Then…Else판단참/거짓으로 갈림
For…Next반복(횟수 앎)i를 1→N 자동
Do While…Loop반복(조건)~인 동안 계속
For + If행 훑어 처리반복 속 판단

3줄 요약

  1. 1If·For·Do While — 판단하고 반복
  2. 2조건과 반복은 매크로 → 변수·셀 → 조건·반복 → 폼 → 자동화 흐름 안의 한 칸이다.
  3. 3개념을 외우는 것보다 입력을 바꾸면 무엇이 달라지는지 보는 것이 우선이다.

완료 전 점검

복습 카드

조건과

If·For·Do While — 판단하고 반복

매크로

기록하거나 작성해 실행하는 자동화 코드

Sub

실행 단위가 되는 프로시저