매일 반복하는 엑셀 작업, 직접 하지 않아도 되는 시대입니다
매일 같은 형식의 데이터를 정리하고, 불필요한 행을 삭제하고, 제목에 색을 입히고, 열 너비를 맞추는 작업을 반복하는 직장인이 많습니다.
작업 하나는 5분 정도밖에 걸리지 않아도 하루에 여러 번 반복하면 한 달 동안 상당한 시간을 소비하게 됩니다.
이럴 때 가장 먼저 떠오르는 기능이 엑셀 매크로입니다. 하지만 많은 직장인은 VBA 코드가 어렵다고 느껴 시작조차 하지 못합니다.
최근에는 ChatGPT를 활용하면 VBA를 직접 공부하지 않아도 원하는 매크 (자세히 보기) (자세히 보기) (자세히 보기) (자세히 보기)로를 상당 부분 만들 수 있습니다. 중요한 것은 AI에게 무엇을 어떻게 요청하느냐입니다.
이번 글에서는 실제 업무에서 자주 사용하는 예제를 기준으로 ChatGPT에게 매크로를 요청하는 방법부터 엑셀에서 실행하는 과정까지 순서대로 살펴보겠습니다.
실제 업무 장면으로 알아보기
아래와 같은 판매 데이터를 매일 받아 정리한다고 가정해 보겠습니다.
| 거래처 | 날짜 | 금액 | 비고 |
|---|---|---|---|
| A회사 | 2026-08-07 | 150000 | |
| 2026-08-07 | 230000 | 확인 | |
| B회사 | 2026-08-07 | 95000 |
매일 해야 하는 작업은 다음과 같습니다.
- 빈 행 삭제
- 첫 번째 행 굵게 표시
- 제목 행 배경색 적용
- 모든 열 너비 자동 맞춤
- 금액에 천 단위 구분기호 적용
사람이 하면 3~5분 정도 걸리지만, 매크로는 몇 초면 끝납니다.

ChatGPT에 이렇게 요청하면 됩니다
많은 사람이 “매크로 만들어 줘” 정도로만 요청합니다. 하지만 조금만 구체적으로 작성하면 결과가 훨씬 좋아집니다.
입력
엑셀 VBA 매크로를 작성해 주세요.
- 사용 중인 시트 전체를 대상으로 작업
- 빈 행 삭제
- 첫 번째 행을 굵게 표시
- 첫 번째 행 배경색을 연한 파란색으로 변경
- 모든 열 너비 자동 맞춤
- C열 금액은 천 단위 구분기호 적용
- 엑셀 365에서 실행 가능하도록 작성
- 주석을 포함해 이해하기 쉽게 작성
이처럼 작업 순서와 적용 범위를 함께 적어주면 수정할 부분이 크게 줄어듭니다.
ChatGPT가 만들어 주는 VBA 예시
아래는 위 요청으로 생성할 수 있는 대표적인 형태의 코드입니다.
Sub FormatData() Dim ws As Worksheet Dim LastRow As Long Dim i As Long Set ws = ActiveSheet LastRow = ws.Cells(ws.Rows.Count, 1).End(xlUp).Row For i = LastRow To 2 Step -1 If WorksheetFunction.CountA(ws.Rows(i)) = 0 Then ws.Rows(i).Delete End If Next i With ws.Rows(1) .Font.Bold = True .Interior.Color = RGB(221, 235, 247) End With ws.Columns.AutoFit ws.Columns("C").NumberFormat = "#,##0" End Sub
코드를 모두 이해하지 못해도 괜찮습니다. 필요한 것은 원하는 작업을 정확하게 설명하는 능력입니다.
엑셀에서 실행하는 방법
- 개발 도구 탭을 활성화합니다.
- Visual Basic을 클릭합니다.
- 삽입 → 모듈을 선택합니다.
- ChatGPT가 작성한 코드를 붙여 넣습니다.
- 저장 후 매크로 실행(F5)을 누릅니다.
처음 한 번만 설정하면 이후에는 같은 작업을 반복해서 사용할 수 있습니다.

실행 전과 실행 후 비교
| 항목 | 실행 전 | 실행 후 |
|---|---|---|
| 빈 행 | 여러 개 존재 | 자동 삭제 |
| 제목 | 일반 글꼴 | 굵게 + 배경색 적용 |
| 열 너비 | 제각각 | 자동 정렬 |
| 금액 표시 | 150000 | 150,000 |
| 작업 시간 | 약 3~5분 | 수 초 |
단순히 시간을 줄이는 것뿐 아니라, 사람이 직접 작업하면서 발생하기 쉬운 서식 누락이나 선택 실수도 줄일 수 있습니다.
한 단계 더 활용하는 방법
많은 사용자가 코드를 한 번 생성한 뒤 그대로 사용합니다. 하지만 실제 업무에서는 한 번 더 검토를 요청하면 품질이 크게 좋아집니다.
예를 들어 다음과 같이 추가로 질문해 보세요.
이 코드에서 오류가 발생할 가능성이 있는 부분을 찾아 수정해 주세요.
실행 속도를 더 빠르게 개선해 주세요.
주석을 초보자도 이해할 수 있게 다시 작성해 주세요.
실행 전에 사용자에게 확인 메시지를 띄워 주세요.
이 과정을 거치면 유지보수하기 쉬운 매크로를 만드는 데 도움이 됩니다.
회사에서 사용할 때 꼭 확인할 사항
- 고객 이름, 전화번호, 주민등록번호 등 개인정보는 ChatGPT에 그대로 입력하지 않습니다.
- 회사 고유의 매출 자료나 계약 정보는 익명화하거나 예시 데이터로 바꾼 뒤 질문합니다.
- 회사에서 생성형 AI 사용 정책이 있다면 반드시 해당 규정을 확인합니다.
- 매크로는 실제 파일이 아닌 복사본에서 먼저 실행해 결과를 확인합니다.
- 매크로 사용이 제한된 조직이라면 IT 부서의 정책을 먼저 확인하는 것이 안전합니다.
마무리
엑셀 매크로는 더 이상 개발자만 사용하는 기능이 아닙니다. 반복되는 작업을 정확하게 설명하고 ChatGPT의 도움을 받아 필요한 코드를 생성한 뒤, 테스트를 거쳐 업무에 적용하면 반복 업무를 훨씬 효율적으로 처리할 수 있습니다.
처음에는 서식 정리처럼 단순한 작업부터 시작해 보세요. 익숙해지면 여러 개의 작업을 하나의 매크로로 연결하거나 버튼 하나로 실행하는 방식까지 확장할 수 있습니다.
자주 묻는 질문(FAQ)
Q1. VBA를 전혀 몰라도 ChatGPT로 매크로를 만들 수 있나요?
가능합니다. 다만 원하는 작업을 순서대로 구체적으로 설명해야 합니다. 생성된 코드는 반드시 테스트 파일에서 먼저 실행해 결과를 확인하는 것이 좋습니다.
Q2. 회사 데이터를 그대로 ChatGPT에 입력해도 되나요?
권장하지 않습니다. 개인정보나 영업 정보, 계약 내용 등은 제거하거나 예시 데이터로 바꿔 질문하는 것이 안전합니다. 또한 회사의 생성형 AI 사용 정책을 먼저 확인해야 합니다.
Q3. 매크로 실행이 안 되는 경우에는 어떻게 해야 하나요?
먼저 엑셀의 개발 도구 탭과 매크로 실행 설정이 활성화되어 있는지 확인합니다. 이후 오류 메시지를 그대로 ChatGPT에 전달하면 원인 분석과 수정된 코드를 함께 받을 수 있어 문제 해결 속도를 높일 수 있습니다.
