엑셀 분석기 — 열지 않고 읽는 업무 엑셀 구조 분석
인수인계가 끊긴 복잡한 업무 엑셀을 실행하지 않고 읽어서, 시트 흐름·계산 규칙·위험 칸·면담 질문·이관 설계까지 보고서로 만드는 로컬 도구입니다. AI가 엑셀 데이터로 만든 HTML 시연물을 거꾸로 읽어 실제 구조와 작업 요청문으로 바꾸는 기능도 있습니다.
- 기간
- 2026-10 – 진행중
- 역할
- 기획 · 설계 · 구현 · 검증 (1인)
- 조직·맥락
- 보험 GA · 영업지원
- 사용자
- 엑셀 업무를 넘겨받는 담당자 · 업무 이관 담당
만든 사람이 떠난 업무 엑셀은 시트 수십 개에 수식이 수십만 칸이라 어디서 숫자가 시작해 어디로 가는지 알 수 없었습니다. 고객 정보가 들어 있어 외부 AI에 통째로 올릴 수도 없었습니다.
성과

배경과 문제
업무 엑셀은 만든 사람이 떠나면 아무도 손대지 못하는 파일이 됩니다. 시트가 수십 개이고 수식이 수십만 칸이며, 파워쿼리와 매크로까지 섞여 있습니다.
이런 파일을 넘겨받을 때 불편은 세 가지였습니다.
- 흐름을 알 수 없었습니다. 어느 시트가 원천이고 어느 칸이 결과인지, 사람이 매달 입력하는 칸이 어디인지 파일만 봐서는 알기 어려웠습니다.
- 외부 AI에 맡길 수 없었습니다. 파일 안에 고객 정보와 회사 숫자가 들어 있었습니다.
- 크기가 컸습니다. 실무 파일은 수백 MB가 보통이고 GB를 넘는 것도 있었습니다.
목표
- 엑셀을 실행하지 않고 읽기만 해서 구조를 뽑을 것. 원본은 바꾸지 않을 것
- AI와 외부 네트워크 없이 내 PC 안에서 끝날 것
- 결과는 수식 건수가 아니라 담당자가 바로 확인할 수 있는 문장일 것
- xlsx · xlsm · xlsb · xls 네 형식을 모두 읽을 것
만든 과정
1. 구상안을 고쳐 순서를 정하다 (2026년 10월 25일) 처음 구상은 개인정보를 지운 사본을 먼저 만들고, AI가 오류를 판정하고, 처음부터 DB와 MCP를 세우는 안이었습니다. 개발 계획을 세우면서 네 가지를 모두 뒤로 미뤘습니다. 읽기 전용 구조 추출을 먼저 만들고, AI 없이도 보고서까지는 쓸 수 있게 했습니다. 같은 날 표준 라이브러리만으로 xlsx를 읽는 첫 버전과 로컬 화면을 만들었습니다.
2. 네 가지 형식을 읽다 (10월 31일) xlsb와 xls는 수식을 글자가 아니라 토큰으로 저장합니다. 토큰을 수식 문장으로 되돌리는 복원기를 직접 만들고, 파워쿼리 M 코드·연결·피벗·VBA까지 읽게 했습니다.
3. 사람이 읽는 보고서로 바꾸다 수식 목록 대신 한 장 요약, 면담 질문, 계산 규칙서, 이관 설계 초안을 앞에 두었습니다. 시트 참조 관계로 작업 순서를 정하고, 쓰이지 않는 열과 Excel 버전별 간소화 수식을 제안합니다. 기계적인 문구는 사람이 읽는 말로 바꿨습니다.
4. 수식을 파이썬으로 옮기다 수식 묶음을 pandas 코드로 변환하고, 엑셀이 저장해 둔 값과 칸마다 비교하는 초안 스크립트를 만듭니다.
5. 큰 파일을 받다 50MB대 파일에서 분석이 끝나지 않던 문제를 시작으로 상한, 스트리밍 읽기, 메모리 구조를 차례로 고쳤습니다. 아래 "겪은 문제와 해결"에 정리했습니다.
6. AI 시연물을 거꾸로 읽다 엑셀을 AI에 넣어 만든 HTML 대시보드를 해부해, 실제로 돌아가는 구조와 PRD 초안을 만드는 기능을 더했습니다.
7. 묶음 단위 저장과 질의 도구 분석 결과를 수식 묶음 단위로 저장하는 분석 DB와, 그 DB를 읽기 전용으로 묻는 MCP 도구를 붙였습니다. 매크로가 어느 칸을 쓰고 지우는지도 흐름도에 연결했습니다.
지금 할 수 있는 것
| 보고서 | 내용 |
|---|---|
| 한 장 요약 | 원천 → 계산 → 결과 한 줄, 매번 하는 일, 사람이 입력하는 곳, 먼저 고칠 것 |
| 면담 질문 | 입력 칸·기준값·숨김 시트·결과 전달처처럼 파일만으로 알 수 없는 것 |
| 작업 순서 | 시트 순서와 시트별 계산 순서도 |
| 계산 규칙서 | 셀 주소를 열 제목으로 바꾼 업무 문장 |
| 이관 설계 | 원천 표·기준 표·집계 SQL 초안·화면·사람 단계 |
| 수정 방향 | 쓰이지 않는 열, Excel 2016·2019·365별 간소화 수식, 차트·피벗 점검 |
| 파이썬 초안 | 바로 실행되는 변환 스크립트와 저장값 대조 결과 |
| 버전 비교 | 이전 파일 대비 바뀐 입력 칸·수식·원천·쿼리·피벗 |
| 부록 | 데이터 흐름도, 위험 신호, 연결·쿼리, 이름, 매크로, 개인정보 열 |
보고서는 두 가지 모양으로 나옵니다. 문서형 보고서와, 체크리스트·메모·면담 답변을 남길 수 있는 화면형 보고서입니다. 화면형의 기록은 서버로 보내지 않고 브라우저에만 남습니다.
HTML 시연물 분석
AI에게 엑셀을 주면 보기 좋은 HTML 대시보드가 바로 나옵니다. 그런데 그 HTML 안에 데이터가 통째로 들어 있어서, 다음 달 데이터가 바뀌면 다시 만들어야 합니다.
- HTML 안의 내장 데이터, 화면 구역, 차트, 조작, 계산, 박힌 숫자, 외부 의존을 읽습니다. 스크립트는 실행하지 않습니다.
- 원본 엑셀이 있으면 표와 열을 맞춰 보고, 시연물에 빠진 엑셀 계산을 찾습니다.
- 실제로 돌아가는 구조를 세 수준으로 추천하고 PRD 초안, 데이터 계약, 가짜 표본, AI에게 그대로 줄 작업 요청문을 만듭니다.
생성된 요청문대로 시연물 하나를 직접 전환해 봤습니다. 전체와 지점별 숫자 카드·표·차트 데이터가 원래 시연물과 같았습니다.
겪은 문제와 해결
| 증상 | 원인 | 해결 |
|---|---|---|
| 50MB대 파일에서 분석이 끝나지 않음 | 공유 수식을 칸마다 전체 목록을 훑어 연결 | 첫 행 색인, 칸 단위 대신 수식 묶음 단위 분석 |
| "100MB를 넘습니다" 오류 | 첫 버전의 안전 상한 | 상한 4GB, 시트·문자열 조각 읽기 |
| 수식이 많으면 메모리 수 GB | 수식 칸마다 객체를 들고 있음 | 묶음과 사각형 구간으로 보관 |
| 큰 파일 업로드 중 빈 오류 | 서버가 받는 도중 연결을 끊어 문구를 못 읽음 | 올리기 전에 상태 확인, 분석 중 연결 유지 신호 |
| 새 창 보고서의 버튼이 동작하지 않음 | 새 창이 원래 화면의 보안 정책을 물려받음 | 서버가 일회용 주소로 보고서 전용 정책과 함께 서빙 |
| 실행마다 계산 순서 번호가 다름 | 순환 참조를 집합 순서대로 돌림 | 정렬해서 순회 |
| 파이썬 변환이 저장값과 다름 | 오류값·빈 글자·SUMIFS 날짜 처리 차이 | 엑셀 동작에 맞춰 실행 함수 수정 |
AI와 함께 만든 방식
xlsx 첫 버전과 로컬 화면은 Codex가 만들었습니다. 네 형식 읽기부터 나머지 구현은 Claude Code가 했습니다.
- 정답표를 먼저 만듦: 시연물 분석은 합성 시연물 8종에 손으로 정답표를 만든 뒤 대조했습니다.
- 형식끼리 대조: 같은 내용을 네 형식으로 저장해 복원한 수식이 서로 같은지 봤습니다.
- 바꾸기 전 결과와 비교: 메모리 구조를 바꿀 때 바꾸기 전 결과를 보관해 두고 내용이 같은지 확인했습니다.
- 화면은 브라우저로 확인: 넓은 화면과 휴대폰 폭에서 가로 넘침과 페이지 오류를 자동으로 확인했습니다.
- 작업 인계 기록: 작업마다 요청·변경·검증·남은 일을 인계 기록에 남겨, 다른 세션과 다른 AI가 이어서 일하게 했습니다.
지금 상태와 다음
- 내 PC에서 쓰는 파일럿 단계입니다. 자동 시험 82개가 통과합니다.
- 남은 일은 GB급 실제 파일 측정, 화면에서 분석 DB 저장 선택, Claude Code에서 MCP 도구 실제 사용 확인입니다.
- 시연물 분석은 실제 업무 시연물로 오탐을 확인하는 일이 남았습니다.
회고
- 처음 구상은 "AI에 넣으면 알아서 분석하는 도구"였지만, 만든 것은 AI 없이 파일을 읽는 도구였습니다. 수식이 몇 칸이고 어느 시트가 어느 시트를 읽는지는 추측이 아니라 파일에서 세어야 할 사실이었습니다.
- 합성 파일에서 잘 돌던 코드가 실제 파일 크기 앞에서 여러 번 멈췄습니다. 시간과 메모리 문제는 실제 크기의 파일로만 드러났습니다.
Updates
업데이트 기록
- 같은 결과를 내는 다른 수식으로 바꿔주는 변환 기능과, 원본·결과값을 자동으로 대조해 검증하는 기능을 추가했습니다.
- 웹 화면에서 수식 변환을 실행할 수 있게 했습니다.
- 웹 화면에 상단 메뉴를 추가하고, 카드형 후보 목록과 통일된 레이아웃으로 디자인을 개편했습니다.
- 수식 변환은 AI가 아닌 정해진 규칙으로만 처리하며, 셀 값은 보지 않고 수식·시트명·열 제목만 다루도록 해 데이터가 외부로 나가지 않도록 했습니다.
- xlsb/xlsx/xls 엑셀 분석기 기능을 확장하고 로컬 서버 오류를 수정했습니다.
- 대용량 파일 처리 시 멈춤과 과도한 메모리 사용 문제를 해결하고, 처리 가능한 파일 용량 한도를 늘리며 스트리밍 방식으로 읽도록 개선했습니다.
- 분석 보고서에 작업 순서 안내, 시트별 계산 지도, 흐름도를 추가했습니다.
- 워크벤치형 레이아웃의 새 보고서를 추가하고 화면 구성을 확장했습니다.