엑셀VBA/VBA 기본
엑셀 매크로 VBA - FOR 문 사용
엑셀턴트
2025. 1. 22. 21:15
VBA For문으로 반복 작업 자동화하기
엑셀에서 반복적으로 처리해야 할 데이터 작업이 많으신가요? 이럴 때 VBA의 For문을 활용하면 간단한 코드로 대량의 데이터를 효율적으로 처리할 수 있습니다. 오늘은 실무에서 유용하게 쓸 수 있는 For문 활용 방법과 간단한 예제를 소개합니다.
For문이란?
For문은 특정 범위 안에서 반복 작업을 수행하는 VBA의 기본 구조입니다. 주로 데이터를 순차적으로 처리하거나, 셀에 값을 입력하는 데 활용됩니다.
For문의 기본 구조
For 변수 = 시작값 To 끝값
' 실행할 코드
Next 변수
Sub SimpleForLoop()
Dim i As Integer
For i = 1 To 10
Debug.Print "숫자: " & i
Next i
End Sub
예제: 빈 셀에 기본값 입력하기
상황
엑셀의 특정 열(B열)에 빈 셀이 포함된 데이터를 관리할 때, 빈 셀을 "N/A"로 자동 채우고 싶다면 For문을 활용할 수 있습니다.
코드
Sub FillEmptyCells()
Dim ws As Worksheet
Dim lastRow As Long
Dim i As Long
' 데이터가 있는 시트 설정
Set ws = ThisWorkbook.Sheets("Sheet1")
lastRow = ws.Cells(ws.Rows.Count, 2).End(xlUp).Row ' B열의 마지막 행 찾기
' B열의 빈 셀을 반복적으로 확인 후 "N/A" 입력
For i = 2 To lastRow
If IsEmpty(ws.Cells(i, 2).Value) Then
ws.Cells(i, 2).Value = "N/A"
End If
Next i
MsgBox "빈 셀이 모두 채워졌습니다!", vbInformation
End Sub
코드 설명
- 마지막 행 찾기 이 코드는 B열의 마지막 데이터를 포함한 행 번호를 찾습니다.
lastRow = ws.Cells(ws.Rows.Count, 2).End(xlUp).Row
2. For문으로 반복 처리
For i = 2 To lastRow
If IsEmpty(ws.Cells(i, 2).Value) Then
ws.Cells(i, 2).Value = "N/A"
End If
Next i
2행부터 마지막 행까지 반복하며 빈 셀을 "N/A"로 채웁니다.
3.작업 완료 메시지
MsgBox "빈 셀이 모두 채워졌습니다!", vbInformation
실행 결과를 사용자에게 알립니다.
응용 방법
- 다중 열의 빈 셀 처리: 여러 열의 빈 셀을 한꺼번에 채우는 코드로 확장 가능.
- 조건부 값 입력: 특정 조건에 따라 빈 셀을 다르게 채우는 방법 적용.
마무리
For문은 VBA에서 반복 작업을 자동화하는 가장 기본적이면서도 강력한 도구입니다. 이번 예제처럼 간단한 작업부터 데이터 분석 및 관리까지 다양한 작업에 활용할 수 있습니다.
지금 바로 For문을 활용해 업무 시간을 절약해 보세요!
궁금한 점이 있다면 댓글로 남겨주세요! 😊