나만의공간

📘 엑셀 고급 강의 14‑3. 루프 및 조건문을 활용한 자동화 흐름 구성 본문

Excel/고급

📘 엑셀 고급 강의 14‑3. 루프 및 조건문을 활용한 자동화 흐름 구성

밥알이 2025. 8. 16. 07:49

📘 엑셀 고급 강의 14‑3. 루프 및 조건문을 활용한 자동화 흐름 구성

이번 소주제에서는 VBA를 사용하여 **여러 시트 또는 데이터 범위를 반복 처리**하고, **조건문**을 활용해 특정 조건에 따라 자동 동작하도록 설정하는 방법을 실습합니다. 이를 통해 대량 자료 자동 처리와 오류 조건 대응 흐름을 확립할 수 있습니다.


1. For 루프를 이용한 반복 작업

Sub LoopExample()
    Dim i As Long
    For i = 2 To 10
        If Sheets("Data").Cells(i, "B").Value > 100000 Then
            Sheets("Data").Cells(i, "C").Value = "우수"
        Else
            Sheets("Data").Cells(i, "C").Value = "보통"
        End If
    Next i
End Sub
  • 2행부터 10행까지 B열 값 검사 → 결과를 C열에 지정
  • 숫자 조건에 따라 결과 자동 입력하는 기본 구조 이해

2. For Each 루프 예제 – 시트 자동 처리

Sub ProcessSheets()
    Dim ws As Worksheet
    
    For Each ws In ThisWorkbook.Worksheets
        If ws.Name Like "Report*" Then
            ws.Range("A1:C1").Interior.Color = vbYellow
        End If
    Next ws
End Sub
  • 시트 이름이 “Report…”로 시작하는 시트에 대해 동작 적용
  • 보고서 시트 자동 범위 서식 적용 등 반복 작업 자동화 가능

3. 조건문과 반복문 병합 응용

Sub HighlightLowStock()
    Dim rng As Range
    For Each rng In Sheets("Inventory").Range("B2:B100")
        If rng.Value < Sheets("Inventory").Range("C2").Value Then
            rng.Interior.Color = vbRed
        End If
    Next rng
End Sub
  • 재고량이 안전재고 수치보다 낮으면 배경색 강조
  • 사용자 입력 셀(C2) 값을 참조하는 조건문 구조 적용

4. 실무 팁 및 주의사항

  • For 루프 또는 For Each 사용 시, 변수가 Range 또는 Worksheet인지 확인
  • 조건문 내부에 여러 조건이 필요한 경우 `And`, `Or` 연산자로 조합 가능
  • 코드 흐름이 길어질 경우 주석(’Comment) 또는 블록분할로 가독성 유지
  • 테스트 시에는 `Debug.Print` 또는 `MsgBox`로 변수 상태를 확인하며 디버깅 가능

5. 요약 정리

  • ✅ For 및 For Each 루프 구조로 반복 작업 자동화 가능
  • ✅ 조건문을 결합해 특정 조건에 따른 작업 흐름을 구성할 수 있습니다
  • ✅ 반복 처리 및 조건 제어는 자동 보고서, 데이터 정리, 오류 표시 등 다방면에 활용됩니다
Comments