🎉 34기 사전알림 신청(2/23 모집 예정)
AI & 생산성 · · 16 min read

엑셀 자동화로 반복 업무 하나 줄이기

매번 주문이 들어올 때마다 복사하고 붙여넣고, 계산하고, 문서를 만들고 있나요? 이 글에서는 엑셀로 이런 반복 작업을 줄이는 가장 작은 자동화 방법을 실제 실습으로 정리했습니다. 복사 붙여넣기 5분에서 1분으로 줄이는 과정을 따라가 볼 수 있습니다.

엑셀 자동화로 반복 업무 하나 줄이기
엑셀 자동화 MVP 만들기_복붙 작업 줄이는 엑셀 자동화 MVP

복붙 5분을 1분으로 줄이는 주문 관리 MVP 만들기

엑셀 자동화를 검색하면 항상 나오는 단어가 있다.

바로,

VBA, 매크로, 파이썬, RPA

그래서 나는 엑셀로 자동화를 시도해 보려면 아래와 같이 이해를 하고 있었다.

그러다 보니 자연스럽게 손이 가지도 않았고 알고 싶지도 않았다.

업무는 너무나 바쁘고 그것을 적용하는 시간보다 내 손이 더 빨랐다. 몇 시간 영상을 보고 복잡하게 시도하는 것보다 몇십 분의 수기 입력과 복붙, 변환하는 과정이 쉽게 느껴졌다.

그리고 급한 것은 당장 처리해야 할 주문과 눈앞에 쌓이고 있는 아웃룩의 메일과 울리고 있는 전화였다.

지금 돌이켜보면 자동화라는 것을 당시 내 수준에선 버거운 기술의 문제로만 봤던 것이었다.

이번 글은 AI를 쓰거나 자동화 프로그램 등을 사용해서 '자동화 완성'하는 것이 아니라 훨씬 작은 목표로 진행해 보려고 한다. 평소 제조, 무역업 등에서 사용 중인 엑셀에서 주문 관리 업무 중 발주서 생성과 같은 반복되는 업무 '하나'를 실제로 줄여보는 것을 목표로 하고 있다.


전)엑셀 자동화 이전에 걸렸던 시간은 5분 40초(PDF변환)

엑셀 자동화를 위해, 구조화하고 목표 설정하기

주문이 들어올 때마다 반복하던 업무를 나열해 보자.

내가 했던 주문 관리 업무 프로세스만 따로 놓고 구조화해보니 단순했다.

  1. 거래처에서 발주서(PO)를 받는다. (문제는 거래처마다 발주서 양식이 다 다르다.)
  2. 오더 리스트(통합 주문 관리 내역)에 주문 정보입력한다.
  3. 별도 가격 리스트에서 가격과 단가확인한다.
  4. 가격과 단가를 다시 오더 리스트에 수기로 입력한다.
  5. 그 내역으로 PI(PROFORMA INVOICE)와 PO(PURCHASE ORDER)를 만든다.
  6. 문서를 바이어와 공장에 송부한다.
    ※3자 무역 구조

이 흐름은 거의 바뀌지 않았고 다들 이렇게 하고 있었고 나도 관행처럼 받아들였다.

이건 원래 이렇게 하는 거지.

그래서 사실은 자동화라는 것을 떠올릴 생각조차 하지 못했다.

그때는 아예 이런 방법이 있는 줄도 몰랐고 자동화는 뭔가 첨단 공장에서 쓰는 거창한 시스템 같았다.

INPUT/LOGIC/OUTPUT 구조로 생각해 보기

위의 주문 관리 업무를 구조를 나눠보면 아래와 같이 바꿔볼 수 있다.

INPUT(들어오는 것)

LOGIC(작업하고 있는 것)

OUTPUT(만들어지는 것)

여기서 중요한 포인트는 LOGIC이 항상 같다는 것이다.

매번 사람이 판단하고 수정하고 조절한다고 생각했지만 실제로는 정해진 규칙을 반복하고 있었던 작업이었다.

MVP 관점에서 자동화 목표 잡기

이번 엑셀 자동화하는 방식은 가장 작은 단위로 만들었다.

흔히, 자동화를 이야기하면 워크플로우나 AI 봇을 떠올리지만 그 단계로 가기 전에도 먼저 할 수 있는 방법이 있다. 간단하게 사람 손이 한 번이라도 덜 가게 하는 방법이다.

자동화란?
기술과 시스템을 활용해 사람의 개입을 최소화하면서 반복적이고 수동적인 작업을 스스로 수행하도록 만드는 프로세스

그래서 이번 엑셀 자동화 MVP는 '가장 먼저 줄여야 할 반복 하나'를 줄이는 것을 목표로 삼았다.

위에서 나눈 업무 중 시간이 많이 소모되면서 사람 개입이 필요하지 않는 작업 하나를 없애는 것을 목표로 잡게 되었다.

🎯
정해진 위치(PI/PO)에 입력한 값 복사 및 붙여 넣기

해당 업무를 선정한 이유는 입력하는 단계 시 이미 사람이 개입하여 가격 등 필수 정보와 오류는 검증을 한 후, 입력을 하고 같은 값을 복사하여 동일 문서에 붙여 넣는 작업이기에 자동화를 해야 할 우선순위 업무에 가장 적합한 업무였다.

실습 준비물

Order_List 헤더 구성(칼럼(열) 구성)

엑셀 자동화 MVP 만들기

Step 0. Order List를 '표(테이블)'로 만들기(1분)

표로 만드는 이유는 두 가지인데

  1. 데이터 범위가 자동으로 늘어나서 다음에 데이터를 입력해도 수십 범위를 고치지 않아도 된다.
  2. '표 이름'으로 관리가 돼서 나중에 유지 보수가 쉽다.

만드는 방법

1) Order_List 시트에서 데이터 범위 전체 선택 (보통 A열과 1행 사이의 삼각형을 누르면 전체 선택이 된다)
2) Ctrl + T
3) 머리글 포함 체크 ✅ → 확인
4) 테이블 디자인에서 표 이름을 tborder로 변경

하지만, 오늘 사용한 수식은 설명을 단순하게 하기 위해서 '열'을 참고하는 방식으로 진행한다.

엑셀을 표(테이블 형태로)로 변환 후_색은 표 스타일에서 변경이 가능하다!

Step 1. 연결 테스트 진행하기(이 단계가 거의 반 이상이다!)

수식을 잘 쓰는 것보다 중요한 것은 조건이 제대로 실행되는지 확인하는 것이다.

GPT나 Gemini, 코파일럿 등을 이용해서 내 화면과 하고 싶은 것을 설명하면 수식은 금방 잘 작성해 준다. 그래서 이걸 실제 넣고 작동하는지 '연결 테스트'를 하는 것이 중요하다.

1) PO_template에서 PO 번호를 입력할 셀을 정한다.(B3)

B3에 이제 오더 리스트에서 만든 PO/PI 번호를 계속 넣어줄 것이다.

2) PO가 잡히는지 확인해야 한다.

=FILTER(Order_List!$C:$C, Order_List!$C:$C=$B$3)

Order_List 시트의 C열(PO 목록) 중 PO_Template의 B3에 적힌 PO 번호와 같은 것만 골라서 보여줘

3) PO 번호 하나에 한 줄만 가져오는 정보인 날짜, Buyer 와 같은 정보는 XLOOKUP을 사용해서 가져온다.

=XLOOKUP($B$3, Order_List!$C:$C, Order_List!$B:B, "")

Order_List 시트의 C열에서 PO_Template의 B3에 적힌 PO번호 찾아서 같은 행에 있는 B열 값 하나 보여줘

💡
한 줄짜리 =조회(XLOOKUP)
여러 줄짜리 = 필터(FILTER)

Step 2. 템플릿 라인에 ‘1줄씩’ 채우기

이제 불러온 PO에 해당하는 열마다 데이터를 불러와야 한다.

STYLE은 STYLE 번호를, ITEM 이면 ITEM, 숫자 면 각각의 숫자 데이터를 말이다. 먼저 STYLE을 부분에 아래 수식을 넣어두고 아래 행을 채우기를 실행했을 때 해당하는 번호로 채워진다면 연결은 확인된 것이다.

=IFERROR(
INDEX(
FILTER(Order_List!$F:$F, Order_List!$C:$C=$B$3),
ROW(A1)
),
""
)

Order_List 시트의 F열(STYLE 목록) 중 PO_Template의 B3에 적힌 PO 번호와 같은 행의 데이터를 보여줘

0:00
/0:08

행에 모두 수식 적용 후 데이터 채워보기

Step 3. 옆 칸으로 확장한다(열만 바꾸면 끝난다)

=IFERROR(
INDEX(
FILTER(Order_List!$H:$H, Order_List!$C:$C=$B$3),
ROW(A1)
),
""
)
=IFERROR(
INDEX(
FILTER(Order_List!$N:$N, Order_List!$C:$C=$B$3),
ROW(A1)
),
""
)
=IFERROR(QTY셀*UNITCOST셀, "")
0:00
/0:08

Step 4. PI_Template도 동일하게 적용하기

PI_Template에도 위의 연결 테스트부터 동일하게 진행해 주면 된다.
대신 PI에는 UNIT COST 대신 UNIT PRICE 단가로 (PRICE 열이고 L열) 넣으면 된다.

0:00
/0:12

PI_Template 함수 적용

(보너스) PDF 저장 '딸깍' 버튼 만들기

위의 단계까지 하면 MVP는 끝이 난다. 하지만 저장까지 딸각하게 되면 실무 체감이 확 올라갈 수 있을 것 같아 버튼으로 저장할 수 있는 방법을 만들어 봤다.

'==============================
' PO PDF 저장
'==============================
Sub Save_PO_as_PDF()

    Dim ws As Worksheet
    Dim poNo As String
    Dim fileName As String
    Dim savePath As String

    Set ws = Worksheets("PO_Template")

    poNo = ws.Range("B3").Value
    savePath = ThisWorkbook.Path & "\"

    fileName = "PO_" & poNo & ".pdf"

    ws.ExportAsFixedFormat _
        Type:=xlTypePDF, _
        Filename:=savePath & fileName, _
        Quality:=xlQualityStandard

    MsgBox "PO PDF 저장 완료!" & vbCrLf & fileName

End Sub


'==============================
' PI PDF 저장
'==============================
Sub Save_PI_as_PDF()

    Dim ws As Worksheet
    Dim piNo As String
    Dim fileName As String
    Dim savePath As String

    Set ws = Worksheets("PI_Template")

    piNo = ws.Range("B3").Value
    savePath = ThisWorkbook.Path & "\"

    fileName = "PI_" & piNo & ".pdf"

    ws.ExportAsFixedFormat _
        Type:=xlTypePDF, _
        Filename:=savePath & fileName, _
        Quality:=xlQualityStandard

    MsgBox "PI PDF 저장 완료!" & vbCrLf & fileName

End Sub

엑셀 vba 코드로 End Sub 기준으로 따로 모듈 1개 씩 만들어서 적용하면 된다.

VBA는 사용 중에 Alt + F11 → 삽입 → 모듈 누르고 위의 코드를 넣으면 끝이다.
0:00
/0:07

버튼 생성 : 개발 도구 → 삽입 → 버튼 → 모듈 연결 → 클릭

이 구조가 자동화의 최소 단위(MVP)인 이유는

이번 실습을 하고 나면 엑셀 기능을 배웠다는 것보다 먼저 체감되는 변화가 있다.

이 과정들이 줄어들게 된다. 결국, 주문 내역 입력 → 문서 완성이라는 결과를 확인할 수 있게 된다. 그리고 이 변화는 한 번은 작아 보여도 업무가 반복될수록 시간을 누적해서 크게 아낄 수 있게 만든다.

후)엑셀 자동화 이후 걸리는 시간은 1분 21초(PDF변환)

그리고 우리는 '매번 반복하던 업무'라는 구체적인 문제에서 출발했다.

그래서 엑셀에서 끝나도 쓸 수 있고 실제 업무에서도 효율이 생기고 정착이 되면 그때 다음을 고민하면 된다. 이미 사용했던 구조이기에 나중에 기능 하나를 추가하거나 범위를 확장하는 선택도 가능해진다.

실제로 많은 실무 업무에서는 이 정도의 자동화로도 충분한 변화가 생긴다.

0:00
/0:45

위) 엑셀 자동화 MVP_PDF 변환 및 확인까지 완료 / 아래) 엑셀 수기 작업 시_복붙만 가능 / 속도 비교

같은 구조로 구글 환경에서 해보면 무엇이 달라질까?

같은 구조를 구글 환경인 구글 시트로 옮기면 선택지가 조금 달라진다.

같은 동작도 가능해 진다.

다만, 지금 단계에서 반드시 구글로 갈 필요는 없다는 것이다. 지금 업무 환경에 따라서 아직 엑셀을 많이 사용하는 환경이면 엑셀에서 구글 환경을 더 많이 이용하는 업무라면 구글에서 자동화할 수 있는 방법을 찾아보자는 것이다.

가장 중요한 것은 내가 지금 하고 있는 업무를 나눠보고, 먼저 줄일 수 있는 경험을 만드는 것이다.

오늘의 ACTION ITEM

‘내 업무 1개’로 15분 자동화 기획하기

  1. 선택 기준 (1분)
    1. 매일 또는 매주 반복된다
    2. 복사·붙여넣기 / 조회 / 계산이 포함되어 있다
    3. 결과물이 문서·리포트·메일 초안처럼 형태가 있다
  2. MVP 범위 (5~15분)
    1. INPUT: 입력 칸 3개만 만든다
      (예: 고객 / 품목 / 수량)
    2. LOGIC: 규칙 3개만 고정한다
      (예: 단가 조회, 금액 계산, 합계)
    3. OUTPUT: 결과물 1개를
      ‘자동으로 채워지게’ 만든다 (템플릿 1장)
  3. 시간 체크 (1분)
    1. 기존 방식으로 1건 처리 시간: __분
    2. MVP로 1건 처리 시간: __분
    3. 줄어든 구간(체감 변화 1줄):
      복붙 제거 / 조회 제거 / 계산 제거 / 저장 단축 중 무엇이었나

이번 엑셀 자동화 MVP 목표였던 복사-붙여 넣기를 없애는 것을 통해 약 86% 리소스를 절감하는 효과를 얻게 되었다.

업무가 달라도 가능하다. 중요한 건 “귀찮은 일이 1건 줄었는지”를 확인해 보는 것이다.

다음 편에서는 이 엑셀 구조를 그대로 가져가 구글 환경에서 할 수 있는 자동화를 해볼 예정이다.

Read next

💌 뉴스레터 구독