엑셀매크로만들기 | 코딩 없이 기록하고 xlsm으로 저장해 쓰는 법

엑셀매크로만들기는 개발 도구 탭에서 매크로 기록을 누르고, 작업한 뒤 기록 중지를 누르면 끝나요.
매크로가 든 파일은 xlsm으로 저장해야 하고, 이 기능은 데스크톱 엑셀에서만 쓸 수 있습니다.

엑셀 매크로 만들기 한눈에 보기
구분내용
시작 위치개발 도구 탭 코드 그룹의 매크로 기록
개발 도구 탭이 없을 때파일 > 옵션 > 리본 사용자 지정에서 체크
저장 형식Excel 매크로 사용 통합 문서(xlsm)
실행개발 도구 > 매크로 > 실행
쓸 수 없는 곳웹용 엑셀(데스크톱 앱 필요)

확인일 2026-11-06 · 근거: Microsoft 지원 Excel 매크로 안내(빠른 시작, 매크로 레코더, 저장·실행·편집) · 정정 요청

엑셀 매크로, 같은 작업을 버튼 한 번으로 되풀이해 줘요

매크로는 엑셀이 대신 해 주는 작업 또는 작업 묶음이에요.
반복 작업을 자동화하려고 기록해서 만들거나, VBA 편집기에서 직접 코드를 써서 만들 수 있습니다.

매크로 기록은 '내 손동작을 녹화해 두는 녹음기'와 같아요. 한 번 녹음해 두면 다음부터는 재생 버튼만 누르면 같은 동작이 그대로 반복됩니다.

기록할 수 있는 동작은 꽤 넓어요. 글자와 숫자 입력, 셀이나 명령 클릭, 셀·행·열 서식 지정, 외부 원본에서 데이터 가져오기가 모두 코드로 남습니다.
그래서 엑셀 차트 만들기처럼 늘 같은 순서로 하는 작업을 기록해 두면 시간이 크게 줄어요.

엑셀 매크로 설정, 개발 도구 탭부터 켜요

개발 도구 탭은 처음에는 숨겨져 있어요.
Windows에서는 아래 순서로 켭니다.

파일 메뉴에서 옵션 열기엑셀 왼쪽 위의 파일을 누르고 옵션으로 들어가요.

리본 사용자 지정 선택옵션 창 왼쪽 목록에서 리본 사용자 지정을 눌러요.

기본 탭에서 개발 도구 체크오른쪽 기본 탭 목록에서 개발 도구에 체크하고 확인을 눌러요.

한 번 켜 두면 체크를 풀거나 Microsoft 365 프로그램을 다시 설치하지 않는 한 계속 보여요.
리본 메뉴를 내 입맛에 맞게 고치는 김에 엑셀 단축키 설정도 같이 살펴보면 좋습니다.

엑셀 매크로 만들기, 기록 버튼으로 5단계면 돼요

코딩을 몰라도 괜찮아요.
개발 도구 탭에서 기록을 시작하고, 평소처럼 작업하고, 멈추면 됩니다.

매크로 기록 누르기개발 도구 탭의 코드 그룹에서 매크로 기록을 눌러요.

이름·바로 가기 키·설명 입력나중에 알아볼 수 있는 이름을 짓고, 필요하면 바로 가기 키와 설명을 적어요.

확인을 눌러 기록 시작확인을 누르는 순간부터 하는 동작이 녹화돼요.

자동화할 작업 하기서식 지정이나 입력처럼 되풀이할 작업을 평소대로 해요.

기록 중지 누르기작업이 끝나면 개발 도구 탭에서 기록 중지를 눌러요.

기록 중에는 불필요한 클릭도 그대로 녹화돼요. 시작하기 전에 어떤 순서로 할지 머릿속에 정리해 두고 한 번에 끝내세요.

예시 1 · 매주 보고서 표 머리글을 꾸미는 하은 씨가정: 하은 씨는 매주 새 표의 첫 줄에 굵은 글씨와 배경색을 넣어요.
이 서식 작업을 한 번 기록해 두면 다음 주부터는 새 표에서 매크로를 실행하는 것만으로 같은 머리글 서식이 입혀집니다.

엑셀 매크로 바로 가기 키, Ctrl+Shift+대문자 조합 예시

Windows에서는 바로 가기 키에 소문자를 넣으면 Ctrl+문자, 대문자를 넣으면 Ctrl+Shift+문자가 돼요.
기존 엑셀 명령과 겹치지 않도록 Ctrl+Shift+Z처럼 Ctrl+Shift+대문자 조합을 쓰는 방식이 있어요.

이미 쓰는 단축키를 매크로가 덮어쓰면 평소 습관대로 눌렀다가 엉뚱한 동작이 나와요. 바로 가기 키를 정할 때 Ctrl+Shift+대문자 조합을 예시로 참고해 보세요.

단축키가 손에 익으면 엑셀 필터 설정이나 엑셀 인쇄 영역 설정처럼 매번 같은 메뉴를 거치는 작업도 한 번에 끝낼 수 있어요.

엑셀 매크로 사용법, 매크로 대화상자에서 실행해요

기록한 매크로는 개발 도구 탭의 매크로를 눌러 대화상자를 열고, 목록에서 고른 뒤 실행을 누르면 돼요.
바로 가기 키를 지정했다면 그 키만 눌러도 됩니다.

고치고 싶을 때는 같은 대화상자에서 매크로를 고르고 편집을 눌러요. Visual Basic Editor가 열리고 기록된 코드가 보입니다.
코드를 보면 내가 한 동작이 어떻게 글자로 바뀌었는지 알 수 있어서, 조금씩 고쳐 가며 익히기에 좋아요.

매크로 기록코딩 없이반복되는 서식·입력 같은 화면 작업을 그대로 기록해요

VBA 편집코드 수정기록된 코드를 고치거나 직접 코드를 써서 만들어요

예시 2 · 기록한 매크로가 조금 어긋난 도윤 씨가정: 도윤 씨가 기록한 서식 매크로가 마지막 열까지 적용되지 않았어요.
매크로 대화상자에서 편집을 눌러 Visual Basic Editor를 열고 해당 줄을 고치면, 처음부터 다시 기록하지 않아도 됩니다.

엑셀 매크로 저장, xlsx 말고 xlsm으로 해요

매크로가 든 통합 문서는 Excel 매크로 사용 통합 문서(xlsm)로 저장해야 해요.
xlsx 형식은 VBA 매크로 코드를 담을 수 없어서, 그대로 저장하면 매크로가 사라집니다.

저장할 때 매크로를 저장할 수 없다는 경고가 뜨면 아니요를 누르고, 파일 형식에서 Excel 매크로 사용 통합 문서를 골라 저장하세요. 반대로 xlsm 파일을 xlsx로 저장하면 새 파일에는 매크로가 빠집니다.

모든 엑셀 파일에서 쓰고 싶은 매크로는 기록할 때 저장 위치를 개인용 매크로 통합 문서로 고르세요.
숨겨진 Personal.xlsb에 저장되고, 이 통합 문서는 엑셀을 시작할 때마다 함께 열려요. 파일 열기 암호가 필요한 문서라면 엑셀 비밀번호 설정도 같이 확인해 두세요.

예시 3 · 모든 거래처 파일에 같은 서식을 쓰는 서연 씨가정: 서연 씨는 거래처별 파일이 여러 개이고 서식 작업이 늘 같아요.
매크로를 현재 통합 문서에 저장하면 그 파일에서만 쓸 수 있지만, 개인용 매크로 통합 문서에 저장하면 어떤 파일을 열어도 매크로 목록에 나타나요.

엑셀 매크로 보안, 믿을 수 있는 파일에서만 실행해요

매크로는 보안 위험이 될 수 있어서 신뢰할 수 있는 파일에서만 실행해야 해요.
출처를 모르는 xlsm 파일의 매크로는 켜지 않는 게 안전합니다.

매크로를 편집하거나 실행하려고 모든 VBA 매크로 사용 설정을 잠깐 고를 수는 있어요. 다만 작업이 끝나면 모든 매크로를 사용하지 않는 설정으로 되돌리라는 안내가 있습니다.
회사 PC는 관리자 설정에 따라 선택할 수 있는 항목이 다를 수 있어요.

웹용 엑셀에서는 VBA 매크로를 만들거나 실행하거나 편집할 수 없어요. 매크로 작업은 데스크톱 엑셀 앱에서 하세요. 엑셀 사용 방법이 궁금하면 엑셀 무료 사용도 참고해요.

엑셀 체크박스·드롭다운과 함께 쓰면 입력 폼이 돼요

매크로는 혼자 쓰는 것보다 다른 기능과 묶을 때 힘이 커져요.
선택지를 고르는 칸이 있으면 매크로가 그 값을 보고 다음 서식을 입히는 식으로 쓸 수 있습니다.

입력 칸을 만드는 방법은 엑셀 체크박스 만들기와 엑셀 드롭다운 만들기에 정리해 뒀어요.

자주 묻는 질문

개발 도구 탭이 안 보이면 어디서 켜나요?
Windows에서는 파일, 옵션, 리본 사용자 지정으로 들어가 기본 탭 목록에서 개발 도구를 체크하면 돼요. 한 번 켜 두면 체크를 풀지 않는 한 계속 보입니다.
VBA를 몰라도 매크로를 만들 수 있나요?
네, 매크로 기록은 내가 한 클릭과 입력을 엑셀이 VBA 코드로 대신 적어 주는 기능이라 코딩 없이 만들 수 있어요.
매크로 파일은 xlsx로 저장해도 되나요?
안 돼요. xlsx에는 매크로 코드가 저장되지 않아서 xlsm인 Excel 매크로 사용 통합 문서로 저장해야 해요.
만든 매크로를 모든 엑셀 파일에서 쓰려면요?
매크로를 기록할 때 저장 위치를 개인용 매크로 통합 문서로 고르세요. Personal.xlsb에 저장되고 엑셀을 켤 때마다 함께 열려요.
웹용 엑셀에서도 매크로를 만들 수 있나요?
웹용 엑셀에서는 VBA 매크로를 만들거나 실행하거나 편집할 수 없어요. 데스크톱 엑셀 앱에서 작업해야 합니다.

매크로로 시간을 줄였다면 다음 엑셀 기능으로 이어가요

반복 작업을 줄였다면 서식과 인쇄까지 자동화의 범위를 넓혀 보세요.
아래 글에서 바로 이어서 볼 수 있습니다.

엑셀 조건부서식조건에 따라 색이 바뀌게› 엑셀 인쇄매크로로 만든 표를 출력할 때› 엑셀 반올림 함수숫자 정리는 함수로›