코덱스와 엑셀로 월간 구매 보고서 자동화 사례

코덱스(Codex)와 엑셀(Excel)로 월간 구매 분석을 자동화했습니다. 2026년 10월 6일 기준, 당월·누적 분석을 Word 보고서 2개로 받는 흐름까지 만들었습니다.

매달 엑셀에서 Word로 옮기던 일

매달 ERP에서 구매 자료를 엑셀로 내려받아 집계하고, 회의 자료로 옮기는 일을 반복했습니다. 지피터스 24기 AI놀이터 멤버 신정균이에요. 일반 회사 구매팀에서 일하고 있어요.

기존에는 피벗으로 사업부별 금액과 건수를 정리했습니다. 구매 품목별로 많이 산 장비, 금액이 큰 장비를 찾고, 구매처도 순위를 매겼다. 실적회의 자료에 있는 내용을 가져와 Word에 채우는 작업도 있었습니다. 인터뷰에서 정리한 기존 소요시간은 월간 자료 전체를 만드는 데 2시간에서 3시간이었습니다.

업무 목적은 이번 달 무엇을 어디서 많이 샀는지 확인해 구매 전략을 세우는 것입니다. 그래서 숫자만 모은 표에 더해, 누적 흐름과 차트도 보고 싶었다. 처음에는 여러 자료를 합치는 전체 회의 자료를 생각했지만, 이번 MVP에서는 구매 엑셀을 분석해 보고서를 만드는 흐름부터 잡았습니다.

처음 보낸 요청은 이렇게 짧았습니다.

마감 후 로데이타를 엑셀로 다운 받아서 회의 자료를 만드는 것

코덱스에 집계 기준부터 설명했다

코덱스에 원본 엑셀과 기존 보고서에서 필요한 항목을 설명하며 범위를 좁혔습니다. MVP는 꼭 필요한 입력부터 결과까지 이어지는 작은 첫 버전입니다. 이번에는 월 원본 엑셀을 넣고 분석 표와 Word 파일을 받는 장면을 중심으로 만들었다.

자동화 전에 지표부터 구분했습니다. 구매수량은 얼마나 많이 요청했는지 나타내고, 구매 요청횟수는 서로 다른 요청번호가 몇 개인지 나타냅니다. 한 요청에 품목 행이 여러 개 있어도 요청횟수는 한 번이다. 품목별 요청횟수를 더한 값이 전체 요청횟수와 같다고 보면 안 됩니다.

입력 화면에서는 귀속 연월, 시트, 제목 행과 자료 범위를 확인하도록 했습니다. 요청번호·부서명·품목명·규격·금액·요청수량·거래처·분류 등 필수 열을 연결하고, ERP 세부 부서를 보고용 사업부와 연결합니다. 이름이 비슷하다는 이유로 부서를 임의로 묶는 방식은 피했습니다.

처음에는 MVP와 n8n을 언제 써야 하는지도 물었습니다. 먼저 직접 실행하는 프로그램에 익숙해진 뒤 자동화 흐름을 검토하겠다고 방향을 정했어요.

그러네 지금은 mvp를 먼저 공부해서 만들고 익숙해 지면 자동화플로우로 업무 효율성을 높이는 방법을 생각해 봐야 겠다

이 선택에 따라 지금 앱은 사람이 월 원본을 등록하고 결과를 확인하는 방식입니다. ERP 자료를 정해진 시간에 가져오는 일은 자동화하지 않았다.

코덱스로 벤더 구매 분리하기

실제 결과를 보니 시스코와 델 직접 구매가 일반 구매 순위에서 큰 비중을 차지했습니다. 일반 품목과 다른 거래처의 흐름을 보려면 벤더 직접 구매를 분리해야 했습니다. 결과를 보고 다음 요청을 보냈다.

다 만들어서 보니까 화면에 TOP 15 미리보기에서 벤더구매는 따로 빼서 보여주는게 좋을거 같아. 벤더 시스코와 델이 압도적으로 많다 보니까 이거 빼고 자료를 보여줘야 인사이트를 찾을 수 있을거 같아

수정 후 기본 화면은 벤더 직접 구매를 제외한 일반 구매로 열립니다. 버튼을 바꾸면 벤더 구매만 따로 볼 수 있다. 이 기준은 제품 브랜드가 아니라 실제 직접 구매 거래처입니다. 같은 브랜드의 제품을 다른 유통업체에서 구매한 내역까지 자동으로 빼는 것은 아닙니다.

일반 구매 TOP 15에는 사업부 선택도 추가했습니다. 기본값은 전체이고, 사업부를 고르면 해당 사업부의 상세 자료에서 순위를 다시 계산합니다. 전체 TOP 15에 들어간 품목만 걸러내면, 특정 사업부에서 중요한 품목이 빠질 수 있기 때문입니다.

기간은 당월 또는 누적, 분석 기준은 품목 또는 거래처, 정렬은 금액·수량·요청횟수로 바꿀 수 있습니다. 다만 사업부 선택은 TOP 15 미리보기에만 적용됩니다. 사업부를 선택했다고 전체 요약과 Word 출력 범위까지 바뀌는 것은 아니므로, 화면 선택이 어디까지 영향을 주는지도 구분했습니다.

월 원본을 모아 누적 분석하기

매달 파일을 추가하면 이전 자료까지 합쳐 보고 싶었습니다. 예를 들어 8월을 선택했을 때 그달 구매와 1월부터 8월까지의 구매를 함께 보는 것입니다. 이 요구도 작업 중 직접 추가했습니다.

그래 좋아 이렇게 최종적으로 만들테니 prd나 mvp 를 수정해줘.

현재 입력 단위는 한 달 전체 원본 한 파일입니다. 과거 자료도 월별로 등록하고, 보고 월을 선택하면 같은 연도의 등록된 월을 누적합니다. 누적 TOP 15는 월별 순위표를 더해서 만드는 것이 아니라, 포함 월의 상세를 모아 다시 집계합니다.

같은 월의 수정 파일은 추가 합산하지 않고 교체를 확인하도록 했습니다. 같은 파일을 반복 등록해 누적이 두 배가 되는 상황을 막기 위한 흐름입니다. 원본에서 음수나 중복 의심 행이 나오면 자동으로 지우지 않고 먼저 확인하게 했습니다.

등록되지 않은 월과 실제 거래가 없는 월도 구분합니다. 빠진 월이 있으면 제공된 월만 계산한 부분 누적으로 표시합니다. 무거래 월은 사람이 별도로 등록한다. 빠진 자료를 구매 0으로 가정하면 추세를 잘못 읽을 수 있으므로, 숫자와 함께 포함 월·누락 월을 보여주게 했습니다.

이 과정에서 별도 마감 총금액과 총수량을 넣는 확인 칸도 마련했습니다. 기준값을 입력하면 원본 상세 합계와 대조하고, 비우면 내부 집계 간 합계만 확인합니다. 내부 합계가 맞는 것만으로 회사 마감 수치와 대조를 끝냈다고 쓰지는 않았습니다.

팀별 표에 사업부 소계를 더했다

Word에 팀별 구매 현황이 나오는 것은 좋았지만, 사업부 전체를 보려면 다시 더해야 했습니다. 그래서 팀별 상세를 유지하면서 사업부 총합도 넣어 달라고 요청했습니다. 이 수정은 당월과 누적 요약에 함께 반영했습니다.

각 사업부의 팀 목록 뒤에 소계 행이 들어갑니다. 소계 금액과 수량은 해당 사업부의 원본 상세에서 계산하고, 구매 요청횟수는 사업부 안의 요청번호를 중복 제거합니다. 팀별 횟수를 단순히 더하면 여러 팀에 걸친 요청을 중복으로 셀 수 있기 때문입니다.

맨 아래 전체 합계도 원본 상세에서 한 번만 계산합니다. 팀별 행과 사업부 소계 행을 함께 더하지 않는다. 기존 사업부 순서를 유지하고, 자료가 없는 사업부에 확인하지 않은 0 실적을 만들어 넣지 않도록 했습니다.

수정한 결과는 가상 자료로 Word를 실제 생성해 점검했습니다. 로컬 버전과 배포 버전의 당월·누적, 일반 구매·벤더 구매·빈 자료 사례에서 요약표 12개를 확인했습니다. 소계 금액·수량, 요청번호 중복 제거, 표시 순서와 숫자 오른쪽 정렬 검사를 통과했다. 회사의 모든 월 실제 자료를 확인했다는 의미는 아닙니다.

표 머리글은 밝은 회색, 글자는 검정으로 두고 숫자는 오른쪽에 맞췄습니다. 품목 옆 규격과 구매 요청횟수를 넣고, 소수점 아래는 표시할 때만 버립니다. 계산은 원본 정밀값으로 하므로, 화면에 보이는 정수만 더한 값과 총계가 다를 수 있다는 점도 안내했습니다.

Word 결과와 남은 점검

현재는 선택한 월의 분석을 보고 Word 두 파일을 ZIP으로 받을 수 있습니다. 하나는 벤더 직접 구매 보고서, 다른 하나는 부서별 일반 구매 보고서입니다. 당월·누적 요약, 품목·거래처 TOP 15, 대·중·소 분류, 추세 차트와 전월 비교가 들어갑니다.

아래는 일부 내용을 직접 가린 실제 Word 결과입니다. 품목 표에서는 규격을 함께 보고, 거래처 표에서는 금액·요청수량·요청횟수를 나란히 확인합니다.

▲ 코덱스로 생성한 Word 품목별 금액 TOP 15: 품목명·규격·금액·요청수량·구매 요청횟수

▲ 코덱스로 생성한 Word 요청거래처별 금액 TOP 15: 거래처·금액·요청수량·구매 요청횟수

앱은 Sites에 비공개로 배포했습니다. 제 계정으로 로그인하면 월 원본 등록 화면과 분석 화면이 보이고, 보고서 다운로드로 이어집니다. 주소는 외부 독자가 바로 열 수 없어 본문에 넣지 않았습니다. 공용폴더에 보고서를 올리는 단계는 지금도 사람이 직접 합니다.

보고서가 생성되는 것과 회의에 그대로 쓸 수 있는지 확인하는 일은 따로 남아 있습니다. 실제 여러 월 원본의 누적 총계 대조와 최신 Word 전체 페이지 점검은 아직 끝나지 않았습니다. 기존 양식의 모든 배치를 동일하게 재현했다고도 보장하지 않습니다.

전년도 비교, 사업부별 개별 추세 차트, 실적회의 PDF와 재고 자료까지 합치는 기능은 현재 범위에 없습니다. 자동화 뒤 실제 작성 시간이 얼마나 줄었는지도 측정하지 않았다. 기존 소요시간과 비교해 몇 분으로 줄었다는 성과는 앞으로 같은 기준으로 재야 합니다.

이번에 정리한 결과물은 입력·집계·보고서 생성이 이어지는 구매 분석 프로그램입니다. 요구사항은 무엇을 만들지 정한 문서인 PRD에 남겼다. 지금 되는 기능과 실행 방법은 사용 안내인 README에 적었습니다. 다음에는 한 달의 원본 총금액·총수량을 앱 결과와 직접 대조하고, 회의용 Word를다시 페이지별로 확인할 계획입니다.

같은 보고서를 만들 때 쓸 요청

아래는 이번 작업에서 정한 조건을 모은 재사용 프롬프트입니다. 실제로 보낸 여러 요청을 정리한 것으로, 처음 보낸 원문과는 구분했습니다. 이렇게 시키면 돼요.

[월 원본 엑셀]과 [기존 보고서 양식]을 기준으로 구매 분석 MVP를 만들어줘.
금액·요청수량·요청번호 기준 횟수를 구분하고, 원본 합계와 대조해줘.
[벤더 직접 구매 기준]은 따로 분리하고 팀별 상세와 사업부 소계를 함께 보여줘.
등록된 월만 누적하고 누락 월은 표시해줘. 모르는 수치와 조건은 추측하지 마.
Word 결과를 만들고 실제로 검사한 것과 아직 검사하지 않은 것을 구분해줘.
1
2개의 답글
지피터스 뉴스레터

이번 주 AI, 딱 쓸 것만

매주 월요일 오후,
읽고 바로 써먹을 AI 소식만