
Excel 속의 AI, 6개가 모여 4586행 ── 전부 일주일 걸린 이야기
요약
Excel 내에서 AI 기능을 수행하는 6개의 폼을 단 8일 만에 구축한 개발 경험을 공유합니다. 공통된 CLI 배관과 폼 복제 방식을 활용하여 개발 속도를 극대화한 패턴 중심의 개발 사례를 다룹니다.
핵심 포인트
- 6개의 AI 폼을 총 8일 만에 완성 (1개당 약 1일 소요)
- Claude Code CLI를 활용한 단일화된 백그라운드 배관 구축
- 기존 폼을 복제하고 내용을 교체하는 패턴 중심의 개발 방식
- VBA 매니저를 통해 코드 작성 및 UI 배치를 AI가 직접 수행
이 연재에서는 Excel 안에서 AI가 일하도록 만드는 도구를, 만들 수 있을 때마다 한 편씩 기사로 써왔습니다. 매크로를 수정하는 이야기, 수식과 검품 이야기, 시트 설명을 시키는 이야기.
문득 세어보니, 폼(Form)이 6개가 되어 있었습니다.
지난번 마무리에서 "콤보에 다른 회사의 모델을 추가한다"라고 예고했지만, 그 숙제는 아직 손대지 않은 상태입니다. 이번에는 그 전에, 잠시 멈춰서 재고 조사를 하려고 합니다. 개점 전의 가게가 선반에 진열된 물건들을 장부에 기록하며 돌아다니는 것과 같은 회차입니다. 무엇이 진열되어 있고, 언제 만들었으며, 어느 정도의 공수가 들었고, 왜 아직 "준비 중" 표지판이 내려가 있지 않은지.
먼저 가장 놀라운 숫자부터 적겠습니다. 6개의 폼은 모두 거의 하루 만에 만들었습니다. 실무를 전부 합쳐도 8일. 달력상으로도 7월 18일부터 8월 2일까지의 16일간입니다.
- Excel 안에서 AI가 작동하는 폼이 6개가 되었습니다. AI 매크로 · AI 수식 · AI 검품 · AI 대화 검색 · AI 요약 설명 · Excel 콤보입니다 - 제작 페이스는 1개당 거의 하루. 6개의 실무를 합쳐도 8일이었습니다. 코드는 합계 4586행 (2026년 8월 4일 시점의 실측)입니다 - 속도의 비결은 근성이 아니라 패턴입니다. CLI를 호출하는 배관은 하나를 돌려쓰고, 폼은 이전 폼의 복제에서 시작하며, 코드 교체도 버튼 배치도 AI가 VBA 매니저(VBA Manager)로 직접 합니다. 이 6개를 만드는 동안 저는 폼 디자이너(Form Designer)를 한 번도 열지 않았습니다.
- 6개에는 동일한 문법이 적용되어 있습니다. 대상을 파악한다 · 정형 지시를 선택한다 · 엔진과 모델을 콤보로 선택한다 · 되돌릴 수 없는 조작은 인간이 승인 · 망가뜨리기 전에 대피
- 다만, 아직 공개하지 않았습니다. 지난주에도 6개 전부에 안전장치를 사후 부착한 참이라 (약 650행),
검토할 부분이 아직 남아있기 때문입니다 - 그래도 머지않아 공개하고 싶습니다. 이 기사는 그 전의, 재고 장부입니다.
먼저 장부부터. 행수는 2026년 8월 4일에 코드 모듈을 센 실측치입니다.
| 폼 | 완성일 | 행수 | 작업 | 기록 |
|---|---|---|---|---|
| AI 매크로 | 7/18 | 1249 | 선택한 매크로를 AI가 수정 | 치환 (대피·복원 포함) |
| ... |
하나씩의 내용은 각각의 기사에 적혀 있습니다. 매크로 수정 편은 이것.
시트 요약과 "눈 가리기" 사건은 이것입니다.
이번에는 그래서, 개별 기능에 대한 이야기는 하지 않겠습니다. 6개를 나란히 놓았을 때 비로소 보이는 것들만 쓰겠습니다.
장부의 "완성일"을 보면, 어떤 폼도 착수부터 작동하기까지 거의 하루입니다. 1249행의 AI 매크로도, 1387행의 Excel 콤보도 (이쪽은 다시 만드는 것을 포함해 2일), 규모에 비해 페이스가 변하지 않습니다.
비결을 밝히자면, 하나를 만들 때마다 "새로 쓰는 양"이 줄어들고 있는 것입니다.
- 배관은 하나뿐. 프롬프트를 UTF-8 파일에 쓰고, 백그라운드에서 Claude Code의 CLI를 호출하여, 답을 파일로 받는다. 이 배관은 7월 18일의 매크로 수정 때 한 번 만든 것이 전부이며, 나머지 5개는 모두 이것을 돌려 쓰고 있습니다.
- 폼은 복제부터 시작한다. AI 검품은 AI 수식의 복제, AI 요약 설명은 AI 검품의 복제입니다. 컨트롤 배치도, 정형 지시 콤보도, 그릇째로 복사한 뒤 내용을 교체합니다.
- 문법을 바꾸지 않는다. 대상을 파악한다 · 정형 지시를 선택한다 · 엔진과 모델을 선택한다 · 실행. 6개 모두 조작 순서가 같기 때문에 설계에서 고민하는 시간이 없습니다.
- 쓰는 손도, 배치하는 손도 AI. 폼의 VBA를 다시 쓰는 것도, 버튼이나 텍스트 칸을 폼에 배치하여 위치를 맞추는 것도, AI가 VBA 매니저(VBA Manager)──열려 있는 북마크의 매크로나 폼을 외부에서 읽고 쓰는 자작 도구로, 6개가 미공개인 지금도 이것만은 공개하고 있습니다──로 합니다. 저는 코드를 복사해서 붙여넣지 않았으며,
이 6개를 만드는 동안 폼 디자이너를 한 번도 열지 않았습니다.
솔직히 말해서, 4가지 중 가장 효과가 큰 것은 마지막 하나입니다. UserForm을 직접 만들어 본 분이라면 아시겠지만, 그 화면은 까다로운 구석이 있습니다. 버튼을 배치하고, 크기를 맞추고, 끝을 맞추는──마우스로 테두리를 잡고 조금씩 움직이는, 그 작업 말입니다. 저도 오랫동안 이것을 수동으로 해왔지만, 이번에는 한 번도 하지 않았습니다. 부탁하면 버튼이 늘어나서 정렬된 상태로 나옵니다. 대화로 부탁하면, AI가 직접 북마크를 수정하고, 제가 그 자리에서 눌러 확인합니다. 이 회전이 몇 분 안에 한 바퀴 도느냐에 따라, 하루는 하루가 될 수도 있고 일주일이 될 수도 있습니다. 6개를 일주일 만에 만든 도구 구성의 토대에는, VBA 매니저의 1년이 담겨 있습니다.
즉, 첫 번째 도구의 1일과 여섯 번째 도구의 1일은 내용이 다릅니다. 첫 번째는 배관을 파는 하루였고, 여섯 번째는 이미 판 배관에 수도꼭지를 다는 하루였습니다. 속도의 본질은 만들 때마다 다음 것이 쉬워지도록 만드는 방식을 선택했기 때문입니다.
규격화된 지시(定型指示)의 개수를 세어보면 이 누적 과정이 그대로 보입니다. 매크로 13개, 수식 6개, 검품 13개, 요약 설명 6개, 대화 검색 4개, 컴보네이션 6개. 이 모든 것은 처음부터 구상한 것이 아니라, 손으로 반복했던 요청 방식을 규격화(定型化)한 것입니다. 선반의 상품 구성은 사용한 만큼 늘어났습니다.
총 4586행. 이 숫자를 어떻게 받아들이는지는 사람마다 다를 것 같습니다.
제 경험을 바탕으로 말씀드립니다. 손으로 만든 개인 개발이었다면, 이 6개는 만들 수 없었을 겁니다. 1년도 무리였고, 3년이 지나도 의심스러웠습니다. 아니, 솔직히 말해서 3년이 지나도 완성하지 못했다고 생각합니다.
이유는 행의 수가 아닙니다. 이 6개 중에는 WMI로 프로세스를 실행하여 ID를 가져오는 것, ADODB로 BOM(Batch Order Management) 없이 UTF-8을 쓰는 것, VBE 내부를 건드려 코드를 교체하는 것, CLI와 표준 입출력으로 대화하는 등—평소 VBA에서는 사용하지 않는 부품들이 곳곳에 박혀 있습니다. 모두 검색하면 나오는 지식이지만, 각기 다른 장소에 흩어져 있고 게다가 하나하나 함정이 붙어 있습니다. 문자 인코딩이 깨지거나, 줄 바꿈이 두 번 되거나, 다른 도메인으로 전송하는 것을 부품이 조용히 거부합니다. 이런 막다른 길은 하나를 해결하는 데 주말 하나가 사라집니다.
개인 개발의 적은 공수(工數)가 아니라 이 막다른 길이 수입니다. 그리고 막다른 길 끝에서 대부분 마음이 꺾입니다.
AI와 함께하면서 이곳이 바뀌었습니다. 막다른 길에 부딪히는 것까지는 같습니다. 다만, 부딪힌 후 빠져나올 때까지가 주말 하나가 아니라 몇 분에서 몇십 분이 됩니다. 그래서 하루 안에 시도가 수십 번 돌아갑니다. 1주일에 만들 수 있었기 때문에 대단한 것이 아니라, 1주일에 돌릴 수 있는 회전수였기 때문에 이 설계에 도달할 수 있었습니다—사용하면서 고치고, 필요 없는 기능을 그 자리에서 버리고, 이름을 바꾸고, 한 번은 전제 자체를 뒤집어 다시 만듭니다. 전부, 회전수의 산물입니다.
자, 여기까지 썼지만, 이 6개가 담긴 북(Book)은 아직 공개하지 않았습니다.
이유는 아끼는 것이 아니라, 아직 검토할 부분이 나오기 때문입니다. 실례를 하나 들겠습니다.
어제, 6개 모두에 안전장치를 후착했습니다. 계기는 Excel 컴보네이션 점검에서 발견된 구멍이었습니다. AI의 응답을 기다리는 동안 '닫기'나 '×'를 누르면 폼이 처리 도중에 망가집니다. 처리가 진행되는 중에 오류가 나면 '처리 중' 표시로 멈춰서, 그 폼은 다시 열 때까지 사용할 수 없습니다. 백그라운드에서 돌아가는 AI 프로세스는 타임아웃해도 방치된 채 계속 돌아갑니다.
이런 구멍들은 매일 혼자 사용하는 데는 문제가 되지 않습니다. 문제를 일으키는 건 서두르는 사람, 도중에 그만두고 싶은 사람, 즉 배포받을 사람들입니다.
재미있었던 것은 고치는 방법이었습니다. 6개는 같은 유형의 복제물로 자라왔기 때문에, 구멍도 6개 공통, 수정도 6개 공통인 것입니다. Excel 컴보네이션으로 수정 방법을 확인하니, 나머지 5개에는 동일한 수정이 일괄적으로 들어갔습니다. '닫기' 동작 보호, 오류 발생 시 뒷정리, 프로세스 중단, 임시 파일 충돌 방지—후착 안전장치는 총 약 650행입니다. 대장의 행 수에도 이 부분이 포함되어 있습니다.
형식으로 만든 도구는 형식으로 고칠 수 있습니다. 이것이 복제하며 늘려왔다는 예상치 못한 배당이었습니다.
그럼에도 '이것으로 전부'라고 말할 수는 없습니다. 승인 제도를 거친 조작의 실탄 테스트를 통과하지 못한 것이 남아있고, 사용하면 다음 구멍이 발견될 것입니다. 공개는 도구가 완성되었을 때가 아니라, 발견되는 구멍들이 '배포받은 곳에서 고칠 수 있는 정도'로 줄었을 때라고 생각합니다. 거기까지 조금만 더입니다.
재고 조사 삼아, 6개에 공통적으로 적용한 선을 적어두겠습니다. 각각의 글로 써온 것들의 요약이 됩니다.
- 재료는 VBA가 준비한다. 시트의 요약본, 범위의 데이터, 매크로 본문. AI에게 전달할 재료는 전부 폼의 VBA가 조립합니다. AI가 스스로 가져가는 Excel 컴보네이션에서도 실제로 손을 움직이는 것은 VBA입니다.
- 읽는 것은 AI의 판단으로, 쓰는 것은 인간의 승인으로. 읽기 전용인 3개(검품・대화 검색・요약 설명)는 애초에 쓸 수 없습니다. 쓸 수 있는 3개(매크로・수식・컴보네이션)는 되돌릴 수 없는 조작 직전에 반드시 확인을 거칩니다.
- 망가뜨리기 전에 대피. 매크로의 교체도 수식의 적용도, 교체 전 것을 메모리에 대피시킨 후 적용합니다. 복원은 버튼 한 번입니다.
- 성공은 무언의 침묵이다. 잘 되었을 때 메시지를 내보내지 않습니다. 나오는 것은 오류와 되돌릴 수 없는 조작의 확인뿐입니다.
이렇게 나열해 보니, 6개는 별개의 도구라기보다 같은 유파를 가진 6명이라는 느낌이 듭니다. 담당이 다를 뿐, 일하는 방식은 같습니다.
관례에 따라 분류하겠습니다.
사실: 폼(Form)이 6개이며, 완성일이 7월 18일, 7월 1920일, 7월 24일, 7월 25일, 7월 31일, 8월 12일이라는 점 (대화 로그와 백업 날짜 기준). 코드가 총 4586행이라는 점 (2026년 8월 4일 모듈 실측치. 안전장치 사후 추가분 약 650행 포함). AI 검품이 AI 수식의 복제로, AI 요약 설명이 AI 검품의 복제로 만들어졌다는 점. 안전장치 사후 추가가 6개 모두 일괄적으로 들어갔다는 점. 정형 지시(定型指示)의 개수 (13, 6, 13, 6, 4, 6).
견해: "수기로 작성하는 개인 개발이었다면 3년이 지나도 완성하지 못했을 것"이라는 말은 저의 실감이며, 측정할 수 없는 수치입니다. "속도의 정체는 회전수"라는 설명 또한 저의 일주일간의 경험을 통한 해석이며, 다른 사람의 일주일이 이와 같으리라는 보장은 없습니다.
- 북(Book)은 미공개 상태입니다. 구동하려면 Claude Code CLI (또는 Gemini CLI)의 설정과 로그인이 필요합니다. 누구의 Excel에서도 즉시 작동하는 것은 아닙니다.
- "1개당 1일"은 도구 측면(VBA 매니저와 CLI를 호출하는 파이프라인(Pipe)에 대한 지식)이 선행되어 있었을 때의 1일입니다. 제로 베이스에서의 1일이 아닙니다. 1년 치의 사전 준비는 이 6개보다 이전에 이미 끝났습니다.
- 승인제 조작(시트 쓰기, 매크로 교체, 매크로 실행)에는 실탄 테스트(실제 구동 테스트)를 거치지 않은 것이 남아 있습니다. 공개 전에 한 번씩 거칠 예정입니다.
- 행수는 도구의 가치를 측정하는 척도가 아닙니다. 이번에는 "개인의 수기 작업으로는 도달할 수 없는 양을 1주일 만에 작성했다"라는 기록을 위해 세었습니다. 오히려 줄여서 줄일 수 있다면, 그 편이 더 좋은 행수입니다.
재고 조사를 통해 알게 된 것은, 6개의 도구를 만든 일주일이 사실은 하나의 도구를 6번 다시 만든 일주일이기도 했다는 점입니다. 파이프라인은 같고, 문법도 같으며, 수정 방식까지 같은 틀로 들어갑니다. 담당이 다를 뿐인 6명이 같은 가게에서 일하고 있는 것입니다.
가게는 아직 열지 않습니다. 하지만 선반은 채워졌습니다. 가격표를 붙이고, 문에 걸린 표지판을 뒤집기까지── 조금 남았습니다.
AI 자동 생성 콘텐츠
본 콘텐츠는 Qiita AI의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기