
매일 Excel에서 똑같은 클릭 순서, 서식 지정, 데이터 조정 작업을 반복하고 있다면 귀중한 시간을 낭비하고 있는 것입니다. 다행히도 Excel에는 이러한 작업을 기억하고 순식간에 재생할 수 있는 '테이프 레코더'가 내장되어 있습니다. 이 도구를 매크로라고 합니다.
Excel 매크로 사용법을 배우는 것은 스프레드시트 초보자에서 고급 사용자로 도약하는 가장 큰 계기가 됩니다. 자동화는 수동 데이터 입력 오류를 없애고, 일관성을 보장하며, 더 중요한 분석에 시간을 쏟을 수 있게 해줍니다. 실제로 많은 전문가가 매크로 자동화를 배워 업무량을 획기적으로 줄이고 있습니다. 스타트업이 Excel 자동화를 통해 매주 20시간을 절약한 방법에 대해서도 읽어볼 수 있습니다.
이 종합 가이드에서는 매크로가 무엇인지, 필요한 도구를 활성화하는 방법, 첫 번째 Excel 매크로를 기록하고 실행하며 편집하는 방법을 정확하게 안내해 드립니다.
본질적으로 매크로는 단일 명령으로 실행할 수 있도록 기록된 일련의 작업이나 명령입니다. 보이지 않는 곳에서 매크로를 기록할 때, Excel은 사용자의 마우스 클릭과 키보드 입력을 VBA(Visual Basic for Applications)라는 프로그래밍 언어로 번역합니다.
매우 효과적인 매크로를 만들기 위해 VBA 코드를 작성하는 방법을 알 필요는 없습니다. 매크로 기록기를 사용하면, 굵게 서식을 지정하거나 IF 또는 SUM 수식을 삽입하고, 열 너비를 조정하는 등 평소처럼 작업을 수행하기만 하면 Excel이 자동으로 필요한 코드를 작성해 줍니다.
기본적으로 매크로를 기록하고 관리하는 데 필요한 도구는 초보자가 실수로 통합 문서를 변경하는 것을 방지하기 위해 Excel에서 숨겨져 있습니다. 가장 먼저 해야 할 일은 개발 도구 탭을 활성화하는 것입니다.
이제 Excel 리본 메뉴의 보기 또는 도움말 탭 옆에 개발 도구 탭이 표시될 것입니다. 이 탭은 매크로 및 자동화와 관련된 모든 작업을 수행하는 컨트롤 센터입니다.
실제 적용 가능한 예시를 살펴보겠습니다. 매일 아침 회사의 소프트웨어에서 판매 데이터 보고서를 내보낸다고 가정해 보세요. 원본 데이터는 항상 지저분합니다. 열이 너무 좁고, 머리글 서식이 지정되어 있지 않으며, 항상 SUM 함수를 사용하여 맨 아래에 합계 행을 추가해야 합니다.
매일 이 작업을 수동으로 수행하는 대신 매크로를 기록하여 이 보고서의 서식을 즉시 지정해 보겠습니다.
기록을 누르기 전에 작업 순서를 계획하는 것이 중요합니다. 매크로 기록기는 문자 그대로 작동하므로 실수, 추가 클릭 및 스크롤까지 모두 기록합니다. 사전에 작업 순서를 알아두면 깔끔하고 효율적인 매크로를 만들 수 있습니다.
이 예제에서는 A열부터 D열까지 데이터가 있고 1행에 머리글이 있다고 가정합니다. 계획된 단계는 다음과 같습니다.
=SUM(D2:D100) 수식을 입력합니다(데이터가 100행까지 있다고 가정). Enter 키를 누릅니다.축하합니다! 방금 첫 번째 매크로를 성공적으로 기록했습니다.
방금 만든 매크로의 강력함을 테스트하기 위해 서식을 실행 취소해 보겠습니다. 데이터가 보기 흉한 원본 상태로 돌아갈 때까지 Ctrl + Z를 여러 번 누릅니다. 이제 매크로를 실행하여 Excel이 사용자를 대신해 작업을 수행하는 모습을 확인해 보겠습니다.
1초도 지나지 않아 Excel에서 머리글을 선택하고 굵게 및 파란색 서식을 적용하며 열 크기를 조정하고 SUM 함수를 삽입합니다. 수동으로 30초가 걸릴 수 있는 작업이 불과 수 밀리초 만에 완료됩니다.
내부 구조를 들여다보기 위해 프로그래머가 될 필요는 없습니다. Excel에서 생성하는 코드를 이해하면 전체 매크로를 다시 기록할 필요 없이 작은 수정 작업을 수행하는 데 도움이 됩니다.
코드를 보려면 개발 도구 탭으로 이동하여 Visual Basic을 클릭합니다(또는 Alt + F11을 누릅니다). 그러면 VBA 편집기가 열립니다. 왼쪽에서 모듈(Modules)을 두 번 클릭한 다음 Module1을 두 번 클릭합니다. 다음과 같은 코드가 표시됩니다.
Sub FormatDailyReport()
'
' FormatDailyReport Macro
' Formats headers, autofits columns, and adds a total.
'
Rows("1:1").Select
Selection.Font.Bold = True
With Selection.Interior
.ThemeColor = xlThemeColorLight2
.TintAndShade = 0
End With
Columns("A:D").Select
Selection.EntireColumn.AutoFit
Range("D101").Select
ActiveCell.FormulaR1C1 = "=SUM(R[-99]C:R[-1]C)"
End Sub
VBA를 모르더라도 이 논리는 충분히 읽을 수 있을 것입니다. Rows("1:1").Select는 Excel이 첫 번째 행을 선택했음을 의미합니다. Selection.Font.Bold = True는 굵게 표시했다는 뜻입니다. 선택한 열을 A~D가 아니라 A~F로 변경하려면, 텍스트 편집기에서 Columns("A:D").Select를 Columns("A:F").Select로 수동으로 변경하고 저장하기만 하면 됩니다.
이러한 스크립트를 처음부터 작성하는 방법을 배우고 싶다면 VBA 기초에 대해 읽어보는 것이 아주 좋은 다음 단계입니다.
초보자가 흔히 겪는 어려움 중 하나는 매크로가 셀을 선택하는 방식과 관련이 있습니다. 기본적으로 매크로 기록기는 절대 참조를 사용합니다. 즉, 기록하는 동안 B5 셀을 클릭하면, 매크로는 실행될 때마다 현재 활성 커서의 위치와 상관없이 항상 정확히 B5 셀을 클릭하게 됩니다.
때로는 현재 커서가 있는 위치를 기준으로 매크로가 셀의 서식을 지정하기를 원할 수 있습니다. 이를 위해서는 기록을 시작하기 전에 상대 참조로 기록(개발 도구 탭의 매크로 기록 버튼 바로 아래에 위치)을 켜야 합니다.
이 개념에 익숙하지 않다면 상대 참조와 절대 참조의 차이점을 복습하여 Excel이 위치를 처리하는 방식을 이해할 수 있습니다. 다음은 매크로 기록기에서 두 모드가 어떻게 작동하는지 간단히 비교한 표입니다.
| 기록 모드 | 작동 방식 | 최적의 용도... |
|---|---|---|
| 절대 참조 (기본값) | 정확한 셀 주소(예: Range("C10").Select)를 기록합니다. 매크로는 항상 C10으로 돌아갑니다. | 고정된 머리글 서식 지정, 특정 정적 데이터 테이블에 VLOOKUP 함수 적용, 또는 A1 셀에 제목 배치 시. |
| 상대 참조 | 활성 셀로부터의 오프셋(예: ActiveCell.Offset(1, 0).Select)을 기록합니다. | "아래쪽 다음 행" 서식을 지정하는 매크로 생성, 또는 현재 선택한 셀에 특정 스타일 적용 시. |
매번 매크로가 원활하게 실행되도록 하려면 다음 초보자 모범 사례를 염두에 두세요.
매크로 기록은 스프레드시트 자동화에 입문하기 위한 완벽한 출발점입니다. 기록기를 마스터하고 나면 매주 반복되는 루틴에서 또 다른 병목 현상을 자연스럽게 파악하기 시작할 것입니다. 결국에는 데이터 가져오기, 정리, 이메일 발송 등을 완전히 수작업 없이 처리할 수 있도록 Excel VBA로 보고서를 자동화하는 단계로 넘어갈 수도 있습니다.
하지만 모두가 프로그래밍 문법을 배워야 하는 것은 아닙니다. 매크로에 입력할 올바른 INDEX, MATCH 또는 IF 수식을 알아내느라 애를 먹고 있다면 수 시간 동안 구글링할 필요가 없습니다. 대신, 원하는 작업을 일상적인 언어로 GPTExcel에 설명하기만 하면 통합 문서에 붙여넣을 수 있는 완벽한 수식이나 VBA 코드 스니펫을 즉시 생성해 줍니다.
기본 매크로 기록기를 최신 AI 도구와 결합하면 책상 위에서 벌어지는 거의 모든 반복 작업을 자동화하여 정말 중요한 일에 집중할 수 있는 더 많은 시간을 확보할 수 있습니다.
본인이 직접 기록한 매크로는 완전히 안전합니다. 하지만 VBA는 강력한 프로그래밍 언어이므로 제3자에 의해 매크로에 악성 코드가 작성될 수 있습니다. 신뢰할 수 있는 소스에서 다운로드한 통합 문서의 매크로만 실행해야 합니다. 그렇기 때문에 Excel은 기본적으로 매크로를 비활성화하고 .xlsm 파일을 열 때 보안 경고를 표시합니다.
아니요. 실행 취소 버튼(Ctrl + Z)을 사용하여 매크로의 동작을 되돌릴 수 없습니다. 중요한 데이터에서 새 매크로를 테스트하기 전에 통합 문서의 백업 복사본을 저장하는 것이 매우 권장됩니다. 매크로가 예상치 않게 동작할 경우 저장하지 않고 파일을 닫은 후 백업을 다시 열면 됩니다.
표준 Excel 파일(.xlsx)은 보안상의 이유로 모든 코드가 제거됩니다. 매크로가 포함된 통합 문서를 .xlsx 파일로 저장하려고 하면 Excel에서 경고를 표시합니다. 기록된 매크로를 보존하려면 "파일 형식" 드롭다운을 "Excel 매크로 사용 통합 문서(*.xlsm)"로 변경해야 합니다.
네, 물론입니다. 매크로를 기록할 때 간단한 SUM이든 복잡하게 중첩된 IF 문이든 상관없이 셀에 입력한 모든 수식이 기록됩니다. 나중에 매크로를 실행하면 Excel이 지정된 셀에 해당 수식을 정확하게 삽입하고 결과를 즉시 계산합니다.
Power Automate를 사용하여 VBA 없이 엑셀 작업을 자동화하는 방법을 알아보세요. 이벤트 트리거 흐름 생성, 데이터 처리 및 다른 앱과 연결하는 방법을 배웁니다.
VBA를 사용하여 Excel에서 자동화된 보고 시스템을 구축하는 방법을 알아보세요. 데이터를 가져오고, 수식을 삽입하고, 셀 서식을 지정하며, 보고서를 내보내는 방법을 단계별 코드로 학습합니다.
VBA를 사용하여 엑셀 프로그래밍을 시작해 보세요. 개발도구 탭, 변수, 루프, 조건문에 대해 알아보고 첫 번째 매크로를 처음부터 직접 작성하는 방법을 배웁니다.