반응형
코딩으로 시간 벌기 / 엑셀 VBA
일곱 번째 이야기: 보고서 자동화의 기초, 주소 지정의 기술
물류아재 칵칵 · 엑셀 VBA 시리즈 7편
안녕하세요, 물류와 코딩 사이의 경계에서 성장하고 있는 물류아재 칵칵입니다. 😊
지난 시간까지 우리는 색깔을 활용한 실무적인 팁들을 다뤄봤습니다. 이제는 한 단계 더 나아가 '보고서 자동화'라는 큰 그림을 그려보려 합니다. VBA로 보고서를 자동으로 만들 때 가장 먼저 배우는 것이 바로 "어떤 셀에 데이터를 입력할 것인가?" 즉, 셀의 주소를 지정하는 방법입니다.
엑셀 VBA에는 셀을 가리키는 두 가지 주요 방법이 있습니다. 바로 Range와 Cells입니다. 이 둘의 차이만 명확히 알아도 자동화 코드의 절반은 완성한 셈입니다.
직관적인 Range vs 유연한 Cells
📦 일상적인 비유로 이해하기
- Range: "서울시 강남구 테헤란로 123번지"처럼 우리가 흔히 쓰는 주소 방식입니다. 눈에 잘 보이고 직관적입니다.
- Cells: "위도 37.5, 경도 127.0"처럼 좌표로 찾는 방식입니다. 기계(VBA)가 반복적으로 데이터를 채울 때 훨씬 유리합니다.
- Range: "서울시 강남구 테헤란로 123번지"처럼 우리가 흔히 쓰는 주소 방식입니다. 눈에 잘 보이고 직관적입니다.
- Cells: "위도 37.5, 경도 127.0"처럼 좌표로 찾는 방식입니다. 기계(VBA)가 반복적으로 데이터를 채울 때 훨씬 유리합니다.
언제 무엇을 써야 할까요? 🛠️
| 구분 | 사용 예시 | 장점 |
|---|---|---|
| Range | Range("A1") | 가독성이 좋고 특정 범위를 한꺼번에 잡기 편함 |
| Cells | Cells(1, 1) | 숫자로 제어하므로 반복문(For~Next) 활용에 최적 |
실전 코드: 데이터 순차적으로 채우기
물류 현장에서 매일 발생하는 입고 리스트를 작성한다고 가정해 봅시다. 1행부터 10행까지 '입고완료'라는 텍스트를 자동으로 채우는 코드입니다.
Sub AutoFillStatus()
Dim i As Integer
'Cells(행 번호, 열 번호) 형식을 사용합니다.
For i = 1 To 10
Cells(i, 1).Value = "입고완료"
Next i
MsgBox "10개 항목 업데이트 완료!"
End Sub
💡 칵칵의 실무 팁
만약 특정 구역(예: A1부터 B10까지)의 색상을 한꺼번에 바꾸고 싶다면 Range("A1:B10").Interior.Color = vbYellow처럼 Range를 쓰는 것이 훨씬 간결합니다. 상황에 맞춰 섞어 쓰는 것이 고수의 비결입니다!
만약 특정 구역(예: A1부터 B10까지)의 색상을 한꺼번에 바꾸고 싶다면 Range("A1:B10").Interior.Color = vbYellow처럼 Range를 쓰는 것이 훨씬 간결합니다. 상황에 맞춰 섞어 쓰는 것이 고수의 비결입니다!
🚨 초보자가 가장 많이 하는 실수
Cells의 순서를 헷갈리지 마세요!
엑셀 시트에서는 'A1'처럼 열(A)이 먼저 나오지만, VBA의 **Cells**에서는 **행(Row) 번호가 먼저** 나옵니다.
- Cells(1, 2)는 A2가 아니라 **B1**입니다! (1행의 2번째 열)
엑셀 시트에서는 'A1'처럼 열(A)이 먼저 나오지만, VBA의 **Cells**에서는 **행(Row) 번호가 먼저** 나옵니다.
- Cells(1, 2)는 A2가 아니라 **B1**입니다! (1행의 2번째 열)
오늘은 VBA 자동화의 뼈대인 주소 지정 방식을 알아봤습니다. 이 기초가 탄탄해야 나중에 수만 줄의 데이터를 눈 깜짝할 새 처리하는 코드를 짤 수 있습니다.
다음 시간에는 이 Cells와 반복문을 활용해 "특정 조건에 맞는 데이터만 다른 시트로 추출하는 방법"을 다뤄보겠습니다. 본격적인 자동화의 시작이니 기대해 주세요! 😊
반응형
'코딩으로 시간 벌기 > 엑셀 VBA' 카테고리의 다른 글
| 실무 자동화 (9편): 1시간 노가다를 1초로 - 여러 파일 하나로 합치기 (0) | 2026.03.24 |
|---|---|
| 여덟 번째 이야기: 수천 줄 데이터에서 '원하는 것'만 쏙 뽑아내기 (0) | 2026.03.22 |
| 드롭다운 목록, 매크로로 자동 업데이트하기! 🔽 (0) | 2026.03.12 |
| 세 번째 이야기: 색깔별 정렬, 클릭 한 번으로 끝내기! 🎨 (0) | 2026.03.10 |
| 두 번째 이야기: 색깔 있는 셀, 합계도 5초 만에! (0) | 2026.03.05 |
