반복 엑셀 작업, AI에게 물어가며 매크로(VBA)로 자동화하기

읽기만 하지 말고, 오늘 필요한 부분 하나만 골라 바로 써보세요.

이 글의 순서 6개
  1. 1단계 — 매크로감인 일 고르기
  2. 2단계 — AI에게 매크로 요청하기
  3. 3단계 — 엑셀에 붙여넣고 실행하기
  4. 4단계 — 에러가 나면, AI와 주고받으며 고치기
  5. 5단계 — 복사본에서 먼저, 결과는 눈으로 검증하기
  6. 이어서 해보기

아빠의 업무 한 입 · 엑셀 자동화

같은 복사–붙여넣기를 마흔 번쯤 반복하다 보면 손보다 마음이 먼저 지치지. 아빠도 매크로는 개발자만 만드는 물건인 줄 알고, 매달 지점별로 시트 나누는 일을 꼬박 손으로 했어.

그런데 AI에게 물어가며 하니까 코드를 읽을 줄 몰라도 되더라. 내가 하는 일을 말로 설명하면 AI가 매크로(엑셀 안에서 도는 VBA 코드)를 써 주고, 에러가 나면 그 메시지를 그대로 보여주면서 고쳐 달라고 하면 돼. 오늘은 그 주고받는 요령을 알려줄게.

다만 매크로는 표 한 장 만들기보다 힘이 세서, 잘못 돌리면 되돌리기가 어려워. 그래서 복사본에서 먼저 돌려 보는 습관까지가 한 세트야. 마지막 확인은 네 몫이야. 오늘 한 입만 해보자.

좋은 소식이 하나 있어요 — 매크로를 부탁할 때는 실제 데이터가 필요 없습니다. "A열=날짜, B열=지점명"처럼 시트의 구조만 설명하면 충분해요. 고객 명단이나 매출 숫자가 든 파일을 통째로 올리지 말고, 구조 설명으로 요청하세요. 그러면 아래 3가지를 걱정할 일 자체가 줄어듭니다.

🟢 3가지(비밀번호·키 / 나·남의 개인정보 / 회사 기밀)만 빼면, 업무 자료는 대부분 넣어도 됩니다. → 안전하게 쓰는 법


1단계 — 매크로감인 일 고르기

모든 엑셀 일이 매크로감은 아니에요. 판별 기준은 두 가지입니다.

  • 같은 동작을 세 번 이상 반복하고 있고,
  • 그 동작의 규칙을 말로 설명할 수 있다면 — 매크로감입니다.

사무 현장에서 실제로 자주 만나는 매크로감은 이런 것들이에요.

  • 시트 여러 장에 흩어진 데이터를 한 장으로 합치기
  • 지점·담당자·월별로 시트를 나눠서 만들기
  • 매주 같은 순서로 하는 필터 → 정렬 → 서식 정리
  • 여러 파일에서 같은 위치의 값을 한 표로 모으기

반대로 이런 일은 매크로감이 아닙니다 — 사람의 판단이 매번 다른 일(어떤 행을 지울지 그때그때 골라야 하는 일)과 딱 한 번만 할 일(그냥 손으로 하는 게 빠릅니다).

→ 다음은 고른 일을 AI에게 설명해 매크로를 받는 방법입니다.

2단계 — AI에게 매크로 요청하기

이 프롬프트가 정본입니다. 그대로 복사하고, 대괄호 [ ] 부분만 내 상황으로 바꾸세요. 핵심은 "매크로 만들어줘" 한 마디가 아니라, 시트 구조안전 규칙을 미리 정해 두는 거예요.

아래 반복 작업을 처리하는 엑셀 VBA 매크로를 만들어줘.

상황:
- 엑셀 버전: [예: Microsoft 365 / 엑셀 2019]
- 시트 구조: [예: "원본" 시트에 A열=날짜, B열=지점명, C열=금액. 1행은 제목, 2행부터 데이터]
- 하고 싶은 일: [예: 지점명별로 시트를 새로 만들어 해당 행들을 복사해줘]

규칙:
- 줄마다 무슨 일을 하는지 한국어 주석을 달 것
- 원본 시트는 읽기만 하고 절대 수정하지 말 것 (결과는 새 시트에 쓸 것)
- 실행 전에 사람이 확인해야 할 것이 있으면 코드 위에 목록으로 알려줄 것

이 프롬프트의 심장은 세 규칙이에요.

  1. 한국어 주석 — 코드를 못 읽어도, 작은따옴표(')로 시작하는 초록색 주석 줄만 읽으면 이 코드가 무슨 일을 하는지 따라갈 수 있습니다. 코드를 검증하는 대신 주석을 검증하는 거예요.
  2. 원본 시트 무수정 — 매크로 사고의 대부분은 원본을 직접 고치다 납니다. 결과를 새 시트에 쓰게 하면, 틀려도 새 시트만 지우면 됩니다.
  3. 실행 전 확인 목록 — "시트 이름이 '원본'이 맞는지 확인하세요" 같은 전제 조건을 AI가 먼저 말하게 합니다. 에러의 절반은 여기서 미리 잡혀요.

답은 대략 이런 모양으로 옵니다 (전체 코드는 상황마다 다르니, 모양만 봐 두세요).

Sub 지점별_시트_나누기()
    ' "원본" 시트의 B열(지점명)을 기준으로
    ' 지점마다 새 시트를 만들어 해당 행을 복사한다
    ' (원본 시트는 읽기만 한다)
    …
End Sub

받은 코드를 실행하기 전에 주석만 훑어서 두 가지를 확인하세요 — ①내가 시킨 일과 주석의 설명이 같은가, ②"원본을 수정한다"는 낌새가 있는 줄은 없는가. 이게 코드를 몰라도 할 수 있는 첫 검증입니다.

→ 다음은 받은 코드를 엑셀에 붙여넣고 실행하는 차례입니다.

3단계 — 엑셀에 붙여넣고 실행하기

받은 코드를 실행하는 절차는 어느 매크로든 똑같아요. 한 번만 익히면 됩니다.

  1. VBA 편집기 열기 — 엑셀에서 Alt + F11을 누릅니다. (리본의 '개발 도구' 탭이 없어도 이 단축키는 동작해요.)
  2. 모듈 만들기 — 편집기 메뉴에서 삽입 → 모듈을 선택하면 흰 코드 창이 열립니다.
  3. 붙여넣기 — AI가 준 코드를 통째로 붙여넣습니다.
  4. 실행 — 코드 안쪽을 한 번 클릭한 뒤 F5를 누르거나, 엑셀 화면에서 Alt + F8로 매크로 목록을 열어 이름을 선택하고 '실행'을 누릅니다.

[스크린샷 자리 — Alt+F11로 연 VBA 편집기, 삽입 → 모듈 메뉴]

실행이 끝났으면 저장이 남았습니다. 매크로가 든 파일은 일반 .xlsx로는 저장되지 않아요 — 저장할 때 파일 형식을 'Excel 매크로 사용 통합 문서(.xlsm)'로 바꿔야 매크로가 함께 저장됩니다.

[스크린샷 자리 — 다른 이름으로 저장 → 파일 형식 'Excel 매크로 사용 통합 문서(*.xlsm)' 선택]

⚠️ 매크로 파일(.xlsm)을 열 때 노란 보안 경고가 뜨는 건 정상입니다. 매크로는 파일을 바꿀 수 있는 힘이 있어서, 엑셀이 "이 매크로를 믿을 거냐"고 묻는 거예요. 내가 직접 만든 파일이면 '콘텐츠 사용'을 눌러도 됩니다. 반대로 남에게 받은 매크로 파일은 — 출처를 모르면 누르지 마세요. 매크로는 유용한 만큼, 악성 파일의 단골 통로이기도 합니다.

[스크린샷 자리 — 노란 보안 경고 표시줄과 '콘텐츠 사용' 단추]

→ 한 번에 돌면 좋겠지만, 처음엔 대부분 에러가 납니다. 다음이 이 글의 진짜 핵심이에요.

4단계 — 에러가 나면, AI와 주고받으며 고치기

에러는 실패가 아니라 대화의 재료입니다. 매크로가 멈추면 에러 창이 뜨고, '디버그'를 누르면 문제가 난 줄이 노란색으로 표시돼요. 그 두 가지를 그대로 복사해 AI에게 돌려주면 됩니다.

방금 준 매크로를 실행했더니 에러가 났어.

에러 메시지: [예: 실행 시간 오류 '9': 아래 첨자 사용이 잘못되었습니다]
노란색으로 멈춘 줄: [디버그를 눌러 노랗게 표시된 코드 줄을 복사해 붙여넣기]

왜 이 에러가 났는지 먼저 설명하고, 고친 전체 코드를 다시 줘.

포인트는 마지막 줄이에요. "고쳐줘"로 끝내지 말고 "왜 났는지 먼저 설명하고"를 붙이세요. 설명을 읽으면 다음번엔 같은 에러를 스스로 피할 수 있고, AI가 엉뚱한 곳을 고치는 것도 알아챌 수 있습니다. 보통 한두 번 주고받으면 돌아가요 — 이 왕복이 이 페이지에서 가장 중요한 기술입니다.

자주 막히는 곳 세 가지도 미리 알아 두세요.

🧰 "리본에 '개발 도구' 탭이 없어요"

기본으로 숨겨져 있어요. 파일 → 옵션 → 리본 사용자 지정에서 '개발 도구'에 체크하면 나타납니다. 급하면 탭 없이 Alt + F11(편집기)과 Alt + F8(매크로 목록)만으로도 충분해요.

🧰 "매크로가 차단되었다고 떠요"

인터넷·메일로 받은 파일의 매크로는 엑셀이 기본으로 차단합니다. 직접 만든 파일이라면 파일을 닫고 → 탐색기에서 파일 우클릭 → 속성 → '차단 해제'에 체크하세요. 회사 PC는 보안 정책으로 매크로가 아예 막혀 있기도 합니다 — 그럴 땐 우회하지 말고 IT 담당자에게 문의하세요.

🧰 "에러 없이 끝났는데 절반만 처리됐어요"

데이터 중간의 빈 행·빈 칸·병합된 셀이 단골 원인이에요. AI에게 "데이터 중간에 빈 행과 병합 셀이 있는데, 끝까지 처리되게 고쳐줘"라고 상황을 알려주면 됩니다. 이런 특성은 처음 요청할 때 '시트 구조'에 미리 적어 주면 더 좋아요.

→ 돌아가는 매크로가 생겼습니다. 마지막은 믿어도 되는지 확인하는 단계예요.

5단계 — 복사본에서 먼저, 결과는 눈으로 검증하기

매크로에는 다른 엑셀 작업과 결정적으로 다른 점이 하나 있습니다 — 매크로가 바꾼 내용은 실행 취소(Ctrl+Z)가 안 됩니다. 그래서 검증 순서가 정해져 있어요.

  1. 복사본에서 먼저 돌린다 — 원본 파일을 복사해 두고, 복사본에서 실행하세요. 잘 돌면 그때 원본에 씁니다. 이 습관 하나가 매크로 사고의 대부분을 막아요.
  2. 작은 샘플로 시험한다 — 데이터가 수천 행이라면, 몇십 행만 남긴 시험용 시트에서 먼저 돌려 결과 모양을 확인하세요.
  3. 숫자를 대조한다 — 처리 전후의 행 수 합계가 맞는지(빠뜨리거나 두 번 복사한 행이 없는지), 금액 같은 핵심 열의 합계가 원본과 같은지 확인하세요. 표가 깔끔하다고 맞는 게 아닙니다.

세 가지가 통과되면 끝입니다 — 마흔 번 하던 복사–붙여넣기가 단추 한 번이 됐습니다. 다음 달에도, 그다음 달에도요.


이어서 해보기

오늘 만든 매크로 프롬프트, 같은 반복 작업으로 고생하는 사람에게도 한 입 나눠줘 봐.