오늘 끝나면
실전 자동화
- ✓실전 자동화의 핵심 문제를 한 문장으로 설명한다
- ✓오른쪽 실습에서 실전이 어떻게 움직이는지 관찰한다
- ✓다음 강의와 이어지는 한계를 말할 수 있다
실습 미션
보고서를 버튼 한 번에 자동 생성 이 문장이 실제로 무슨 뜻인지 실습에서 한 번 손으로 확인한다.
성공 조건
- □실습의 기본값을 먼저 관찰
- □입력값이나 모드를 한 번 이상 바꿔 결과 비교
- □왜 결과가 바뀌었는지 한 문장으로 설명
엑셀 VBA · 08
실전
자동화
지금까지 배운 걸 다 합칠 차례임.
여러 시트에 흩어진 데이터를 모아 보고서 한 장으로 만듦.
버튼 하나만 누르면 됨.
매주 똑같은 손작업이 문제다
현장에서 자동화가 절실한 순간은 늘 똑같음. 매번 손으로 하는 똑같은 절차임.
시트가 월 화 수로 나뉘어 들어옴.
매주 이걸 새 시트에 복사하고 · 정렬하고 · 합계를 냄.
한 번에 30분. 한 달이면 두 시간을 똑같은 일에 씀.
사람이 하면 줄이 밀리고 합계를 빼먹음.
반복 절차를 한 번 코드로 적어두면 그 다음부터는 버튼이 함.
이게 실전 자동화의 출발점임.
매주 30분 · 줄 밀림 · 합계 빠짐
배운 걸 다 쓴다 — 범위·반복·조건
보고서 매크로 한 덩어리 안에 지금까지 배운 게 전부 들어감. 새 문법은 없음.
For Each ws In Worksheets로 시트를 하나씩 돌고
Cells(r, c)로 각 칸을 읽음.
If amt >= 100 Then로 큰 건만 골라냄.
모은 값은 Function으로 합계를 내고
Dim으로 잡은 변수에 차곡차곡 쌓음.
따로 외울 게 아니라, 배운 조각을 순서대로 끼우면 보고서가 나옴.
| 코드 | 하는 일 |
|---|---|
| Dim ~ As4강 | 변수 잡기값 담을 그릇 |
| Cells(r, c)3강 | 범위 읽기칸 하나씩 |
| If amt >= 1005강 | 조건 거르기큰 건만 |
| For Each ws6강 | 반복 돌기시트마다 |
| Function total2강 | 함수 합계값 돌려줌 |
데이터를 모으고 정리하는 흐름
자동화의 속은 단순한 네 단계임. 시트마다 읽고 · 조건으로 거르고 · 한 곳에 쌓고 · 합계를 냄.
시트를 도는 바깥 반복이 하나
그 안에서 행을 도는 안쪽 반복이 하나임 / 이걸 중첩 반복이라 함.
행마다 If로 거를지 말지 정하고, 통과한 값만 보고서 행에 적음.
그래서 시트가 3개든 30개든 코드는 그대로임.
Worksheets.Count가 알아서 늘어난 만큼 더 돎.
데이터가 불어나도 손은 안 늘어남.
시트가 3개든 30개든 코드는 그대로
버튼 하나로 보고서 한 장
오른쪽에서 직접 돌려봄. 월·화·수 시트의 원시 데이터가 흩어져 있음.
[보고서 생성] 한 번이면 합쳐진 표가 나옴.
기준 금액 슬라이더를 올리면 그만큼 큰 건만 잡힘 / 이게 코드 속 If amt >= 기준임.
데이터를 바꾸고 다시 눌러봐도 됨. 절차는 늘 똑같이 돎.
한 번 짠 매크로는 다음 주에도 · 다음 달에도 그대로 씀.
파일만 바뀔 뿐, 사람이 다시 손댈 일은 없음.
이게 실무에서 말하는 “자동화 완성”임.
이 금액 이상인 건만 보고서에 들어감. 슬라이더가 곧 코드 속 조건임.
버튼을 누르면 매크로가 시트를 하나씩 돌며 조건에 맞는 행만 모아 표를 만듦.
한 번 짜면 평생 굴린다
자동화의 진짜 보상은 시간임. 만드는 데 한 번 두 시간을 써도, 그 뒤로 매주 30분을 돌려받음.
버튼은 지치지 않음 · 줄을 밀지 않음 · 합계를 빼먹지 않음.
사람이 실수할 자리를 코드가 통째로 없앰.
여기까지가 이 코스의 끝임. Dim · Range · If · For · Sub/Function · 이벤트를 다 합쳐 버튼 하나짜리 도구를 만들었음.
이제 본인 업무의 “매주 똑같은 30분”을 찾아 똑같이 적어두면 됨.
Q. 실전 자동화의 핵심을 한 줄로? (매크로를 길게 짜기 · 반복 절차를 한 번 코드로 적어 버튼 하나로 · 시트를 많이 만들기 · eval 쓰기)
정답은 반복 절차를 한 번 코드로 적어 버튼 하나로임.매주 손으로 하던 똑같은 절차를 코드로 한 번 적으면, 그 뒤론 클릭 한 번이 다 함.
길이가 중요한 게 아니라 “반복을 한 번 적어 자동으로 굴리는 것”이 핵심임.
≈ 2시간 / 월
≈ 4초 / 월
만드는 시간은 한 번 · 돌려받는 시간은 매주