업무 파일 다루기 — CSV·엑셀 자연어로 정리
매일 받는 주문·고객 CSV를 Codex한테 넘기고 정렬·필터·합계를 자연어로 끝내요. 파일은 드래그 한 번, 결과는 앱 안에서 바로.
이 챕터를 끝내면 엑셀 수식·피벗을 몰라도 Codex한테 CSV를 던져서 원하는 모양으로 정렬·필터·합계까지 뽑을 수 있어요. 업무에서 가장 많이 돌아오는 "이 데이터 좀 정리해서 보내주세요" 요청이 5분 안에 끝나요.
500행 CSV에서 특정 월 필터링 + 고객별 합산 + 상위 10명 추출. 엑셀이면 피벗 만들고 조건 걸고 정렬하느라 20분. Codex한테는 프롬프트 하나 + 결과 확인 2분. 이게 반복되면 "오전 전부 엑셀 씨름하던" 날들이 사라져요.
업무 데이터는 대부분 표예요#
매출 내역, 주문 목록, 고객 리스트, 설문 응답, 구글 폼 결과. 전부 행과 열로 된 표죠. 엑셀에서 이걸 다루려면 VLOOKUP·SUMIF·피벗 테이블 같은 수식을 외워야 했는데, Codex한테는 하고 싶은 걸 말로 설명하면 돼요.
오늘 할 일 — 주문 CSV 정리#
시나리오는 이래요.
지난달 주문 데이터
orders.csv가 하나 있어요. 500행 정도. 날짜·고객명·상품명·수량·금액 컬럼. 원하는 건 세 가지예요.
- 지난달(3월)에 해당하는 행만 추출
- 고객별로 총 구매 금액 합계
- 상위 10명 고객을 금액순으로 정렬해서 새 CSV로 저장
엑셀이라면 피벗 걸고 필터 걸고 정렬하는 3단계. Codex한테는 한 번에 부탁하면 돼요.
파일 드래그로 넘기기#
Codex 앱 대화창에 CSV 파일을 그대로 끌어다 놓으면 Codex가 해당 파일을 맥락에 포함시켜요. 폴더를 미리 만들거나 경로를 복사·붙여넣기할 필요 없어요. 손에 있는 orders.csv를 그냥 끌어다 놓아요.
파일이 들어갔으면 이렇게 부탁해요.
방금 넣은 orders.csv를 다음 순서로 처리해줘.
1. 주문 날짜가 2026년 3월인 행만 남겨
2. 고객명으로 묶어서 총 구매 금액을 합산
3. 금액이 큰 순서로 상위 10명만 추려서 내 바탕화면에 top10.csv로 저장
실행 전에 3월 데이터가 몇 행인지, 고객이 몇 명인지 먼저 알려줘. 숫자가 예상과 다르면 내가 멈출게.
저장 위치를 프롬프트에 명시하는 게 핵심이에요. "바탕화면"·"다운로드 폴더"·"원본과 같은 폴더"처럼 원하는 자리를 말로 지정해두면 Codex가 헤매지 않아요. 마지막 문장은 ch09에서 배운 안전 패턴 — 실행 전에 숫자부터 보고 이상하면 멈추는 거예요.
결과 확인 — 내장 터미널#
Codex는 스크립트를 돌린 결과를 앱 안의 터미널 영역에 출력해줘요. "3월 주문: 247행, 고객 98명, 상위 10명 저장 완료" 같은 요약이 바로 보여요. 별도로 터미널 앱을 열지 않아도 돼요.
새로 만들어진 top10.csv는 아까 프롬프트에 적어둔 위치(예제에선 바탕화면)에 바로 떨어져요. Finder에서 열어 엑셀·Numbers로 넘겨도 되고, 메일·슬랙으로 바로 공유해도 돼요.
자주 쓰는 패턴들#
업무에서 반복적으로 마주치는 요청들은 이런 식으로 말하면 돼요.
- 여러 파일 합치기 — "이번 주 받은 CSV 세 개를 하나로 합쳐줘. 중복 행은 이메일 기준으로 제거."
- 열 바꾸기 — "전화번호 열을 010-XXXX-XXXX 형식으로 통일해줘."
- 피벗 같은 집계 — "상품별로 월별 판매량을 표로 만들어줘. 행은 상품, 열은 월, 값은 판매 수량 합."
- 조건부 계산 — "금액이 10만원 넘는 주문만 대상으로 고객별 평균 주문 금액 계산."
- 엑셀 파일도 그대로 — "report.xlsx에서 '주문' 시트만 읽어서 같은 작업 해줘." (xlsx 바로 처리됨)
- Google Sheets 링크 — 공유 링크를 프롬프트에 붙여넣으면 권한에 따라 Codex가 읽어요. Plugin 연결돼 있으면 더 깔끔해요(ch11 참고).
- 검증만 먼저 — "합계 맞는지 열별로 한 번 확인해주고 결과만 보여줘. 저장은 하지 마."
원하는 대로 안 움직일 때#
업무 데이터에서 자주 마주치는 함정 네 개. 각각 프롬프트 한 줄로 풀려요.
사례 1: 한글이 ???? 또는 깨진 문자로 보여요
→ CSV 인코딩 문제. 윈도우 엑셀에서 저장한 파일은 cp949/euc-kr일 때가 많고, Google Sheets에서 내려받은 건 utf-8이에요. 프롬프트에 "인코딩을 자동 감지해서 읽어줘. 안 되면 cp949로 시도"를 덧붙이면 대부분 해결돼요.
사례 2: 합계가 실제 엑셀 값과 달라요 → 원본에 숨은 행·필터·빈 행이 섞여 있는 경우가 많아요. "계산 전에 다음을 먼저 알려줘: 총 행 수, 빈 셀 포함 행 수, 숫자가 아닌 값이 섞인 열 목록." 한 단계를 추가하면 어디서 차이가 나는지 바로 보여요.
사례 3: 수만 행 CSV에서 Codex가 오래 걸리거나 멈춘 듯해요 → "먼저 파일 구조(열 이름·데이터 타입·샘플 5행)만 알려줘. 내가 OK하면 전체 실행." 2단계로 나누면 큰 파일도 안전해요. 전체 실행 시간이 부담되면 청크 단위(1000행씩)로 돌려달라고 해도 돼요.
사례 4: 열 이름 매핑을 엉뚱하게 함 → "고객명"과 "구매자" 같은 유사 열이 섞여 있으면 Codex가 추측해요. "열 이름 목록 먼저 보여줘. 내가 어떤 열을 쓸지 지정할게"로 1차 확인 단계를 두면 실수가 없어져요.
다음 챕터에서#
여기까지는 내 컴퓨터에 있는 파일을 다뤘어요. 다음 챕터에서는 범위를 넓혀서 외부 서비스 — Gmail 받은편지함을 Codex가 직접 읽고 정리하게 해봐요. Plugin 기능으로 Codex를 내 계정에 연결하는 흐름이에요.