가구 제조사의 SCM팀 재고 담당자가 있습니다. 그가 엑셀 VBA와 파이썬으로 재고 관리 자동화를 만들었고(지피터스 원문), 최소 3일 걸리던 단종품 분석이 5분에 끝나게 됐습니다(본인 기록). 본업과 육아를 병행하며 틈틈이 만든 결과입니다. 이 이야기는 AI 커뮤니티 지피터스에 작성자가 직접 올린 자기보고 기록이고, 제3자가 검증하지 않았습니다. 그런데도 이 사례를 실무자 트랙의 첫 자리에 놓습니다. 왜냐하면 이 글을 읽는 당신이 그대로 따라 할 수 있는 크기이기 때문입니다.
무엇을 바꿨나
이전의 하루는 이랬습니다. ERP에서 데이터를 뽑습니다. 엑셀로 옮깁니다. 눈으로 훑으며 이상한 것을 찾습니다. 매일 반복입니다. 그중에서도 단종품의 짝을 맞추고 추가생산량을 계산하는 일은 최소 3일이 걸렸습니다.
그는 ERP를 바꾸지 않았습니다. ERP와 자기 엑셀 사이의 틈만 자동화했습니다. 바뀐 뒤의 흐름은 이렇습니다.
- VBA가 폴더에서 가장 최근 추출 파일을 스스로 찾아 엽니다
- 컬럼을 자동으로 매핑해 정해진 시트에 옮깁니다
- 요일별로 갱신 범위가 다릅니다. 월요일에는 모든 시트, 화요일부터 금요일까지는 일일 시트만
- 파이썬이 알림 3종을 만듭니다. 발주 필요, 단종 미처리, 사양 변경
이 알림이 걸러낸 것이 발주 필요 331건(총 발주필요량 14,228개), 단종됐는데 처리가 안 된 160건, 사양이 바뀐 98건입니다(본인 집계). 단종품을 얼마나 더 생산할지는 원가 60% 룰로 정했습니다. 추가 생산이 필요한 단품의 입고가 합이 세트 전체 입고가의 60%를 넘지 않는 선에서만 만든다는 자체 기준입니다.
여기서 한 가지 묻고 싶습니다. 사람이 매일 눈으로 훑으면서 단종 미처리 160건을 다 잡을 수 있었을까요. 어려웠을 것입니다. 그러니 이 자동화의 성과는 빨라진 것이 아닙니다. 놓치지 않게 된 것입니다. 속도는 덤입니다.
성공담보다 값진 다섯 번의 삽질
산출물은 코드 1,500줄이 넘고, 엑셀 파일 2개와 시트 8개로 굴러갑니다. 그런데 이 글에서 정말 옮겨 적을 가치가 있는 부분은 완성된 시스템이 아니라 작성자가 남긴 시행착오 목록입니다.
1. 시트를 비우려고 전체 행을 지웠더니 수식까지 같이 지워졌습니다. 매핑되는 컬럼만 ClearContents로 비우는 방식으로 바꿨습니다.
2. ERP가 내보내는 파일명이 그때그때 달랐습니다. 정확히 일치하는 이름을 찾는 대신 InStr로 일부만 맞아도 찾게 했습니다.
3. CSV가 UTF-16 인코딩인 데다 '색상'과 '색상.1'처럼 컬럼명이 겹쳤습니다. 이름 대신 인덱스 번호로 직접 접근해서 풀었습니다.
4. 템플릿을 .xltm으로 저장했더니 오류가 났습니다. .xlsm으로 바꿨습니다.
5. 실행할 때마다 앞 두 행의 데이터가 사라졌습니다. 시작 행을 3으로 옮겨서 해결했습니다.
다섯 개를 관통하는 사실이 하나 있습니다. 전부 코딩 실력의 문제가 아니라 현장 데이터의 문제라는 점입니다. 교과서의 CSV는 UTF-8이고 컬럼명이 겹치지 않습니다. 그러나 현장의 CSV는 UTF-16이고 '색상'이 두 번 나옵니다. AI가 코드를 짜 주는 시대에도 이 다섯 가지는 자기 데이터를 아는 사람만 넘을 수 있습니다. 작성자도 시행착오가 있어야 완성에 가까운 결과물이 나온다고 적었습니다.
역할 분담도 눈여겨볼 만합니다. 코드 작성은 Claude의 손을 빌렸다고 작성자는 밝혔습니다. 그가 한 일은 업무 규칙을 말로 정의하고, 실제 파일로 돌려 보고, 틀린 곳을 되짚는 것이었습니다. 말하자면 실무자의 몫은 코딩이 아니라 자기 업무를 언어로 바꾸는 일이었던 셈입니다.
숫자를 읽을 때
이 사례의 한계를 그대로 적습니다.
- 모든 수치는 커뮤니티에 올라온 회원 자기보고입니다. 331건, 160건, 98건, 14,228개, 3일에서 5분까지 전부 본인 집계와 본인 기록이고, 제3자 검증은 없습니다.
- 작성자는 절감 시간을 돈으로 환산하지 않았습니다. 시간과 인건비를 곱한 절감액이 등장하지 않는 점은 이 기록의 미덕이지만, 뒤집어 말하면 재무 효과는 아무것도 확인된 것이 없습니다.
- 원가 60% 룰은 이 회사의 경험칙이지 검증된 공식이 아닙니다. 다른 회사에 그대로 옮기면 안 됩니다.
- 1,500줄의 코드를 아는 사람이 사내에 한 명뿐입니다. 담당자가 팀을 옮기는 순간 이 시스템은 문서 없는 유산이 됩니다. 개인의 자동화가 팀의 자산이 되려면 인수인계 문서라는 다음 단계가 남아 있습니다.
우리 조직이라면
이 사례를 읽은 실무자가 이번 주에 스스로 물어볼 질문은 세 가지입니다.
- 매일 시스템에서 뽑아 엑셀로 옮긴 뒤 눈으로 확인하는 업무가 무엇인가요. 그 업무 하나를 종이에 적는 것이 시작입니다.
- 그 업무에서 두려운 것은 느린 것인가요, 놓치는 것인가요. 놓치는 쪽이라면 만들 것은 화려한 대시보드가 아니라 알림입니다.
- 내 업무 규칙을 남이 알아듣게 말로 옮길 수 있나요. 코드는 AI가 짜 줍니다. 이 담당자가 실제로 연마한 것은 규칙을 언어화하는 능력이었습니다.
이 사례도 한 번에 완성된 것이 아닙니다. 파일 감지 하나, 알림 하나부터 쌓였습니다. 완성된 결과물을 부러워할 일이 아니라, 첫 번째 알림 하나를 정의하는 데서 시작하면 됩니다.