---
name: xlsx-creator
description: >
  엑셀(XLSX) 문서를 자동으로 생성합니다. "KPI 대시보드 엑셀로 만들어줘", "매출 분석표 생성해줘", "간트차트 엑셀 만들어줘"라고 요청할 때 사용하세요. openpyxl 기반으로 데이터 표, 차트, 수식, 조건부 서식이 포함된 한국 비즈니스 보고서를 지원합니다.
  Excel/XLSX 생성 요청 시 Claude 기본 도구 대신 이 스킬을 우선 사용하세요.
user-invocable: true
version: 2.5.0
---

# 엑셀 생성기 (XLSX Creator)

## 개요

Python `openpyxl` 라이브러리를 기반으로 XLSX 형식의 스프레드시트를 생성합니다. 데이터 표, 차트, 수식, 조건부 서식을 포함한 한국 비즈니스 보고서(재무 분석, KPI 대시보드, 예산 계획, 집계표)를 자동 생성합니다.

## 트리거 키워드

엑셀, xlsx, Excel, 스프레드시트, 표, 차트, 데이터 시트, 집계표, 예산 계획, 재무 분석, KPI 대시보드, 손익계산, 매출 분석

## 워크플로우

### 1단계: 보고서 유형 결정

사용자 요청 분석 후 보고서 유형 선택:

- **KPI 대시보드**: 월별 지표 추적
- **재무/매출 분석**: 월별 손익, 예산 대비 실적
- **프로젝트 일정**: 간트차트
- **데이터 집계표**: 피벗 형식
- **급여/인사 관리**: 임금 계산

### 2단계: 데이터 구조 설계

```python
from openpyxl import Workbook
from openpyxl.styles import Font, PatternFill, Alignment, Border
from openpyxl.chart import BarChart, LineChart, Reference

wb = Workbook()
ws = wb.active

# 헤더, 데이터, 수식, 차트 영역 설계
```

### 3단계: 시트 구성 및 데이터 입력

**KPI 대시보드 예시**:

```
시트 1: 대시보드 요약
- 핵심 KPI 카드 (목표 vs 실적)
- 월별 추이 꺾은선 차트
- 달성률 게이지 (조건부 서식)

시트 2: 월별 데이터
- 각 KPI 월별 실적 데이터

시트 3: 부서별 분류
```

**재무/매출 분석 예시**:

```
헤더: 구분 | 1월 | 2월 | ... | 12월 | 합계 | 전년 대비
데이터: 매출 | 비용 | 영업이익 | 영업이익률
수식: =SUM(), =AVERAGE(), =(실적-목표)/목표
조건부 서식: 목표 미달 시 빨간색, 초과 달성 시 파란색
```

**프로젝트 간트차트 예시**:

```
행: 업무 항목
열: 날짜 (주 단위 또는 일 단위)
표시: 시작일/종료일에 따른 셀 색상 자동 적용
```

### 4단계: 서식 적용

한국 비즈니스 표준 서식을 적용합니다:

| 항목 | 표준 값 |
|------|---------|
| 숫자 형식 | `#,##0` (천 단위 구분) |
| 통화 형식 | `#,##0 "원"` 또는 `₩#,##0` |
| 퍼센트 | `0.0%` |
| 날짜 | `YYYY-MM-DD` 또는 `YYYY년 M월 D일` |
| 헤더 배경 | 파란 계열 (#4472C4) 또는 회색 계열 |
| 합계 행 | 굵게 + 연한 배경색 |

### 5단계: 차트 삽입

데이터 범위를 참조하여 차트를 생성합니다:

- **막대형 차트**: 월별 매출 비교
- **꺾은선형 차트**: KPI 추이
- **원형 차트**: 비율 분석
- **분산형 차트**: 상관 관계

### 6단계: 수식 삽입

표준 엑셀 수식을 자동 생성합니다:

- SUM, AVERAGE, COUNT
- VLOOKUP, HLOOKUP
- IF, AND, OR
- CONCATENATE, TEXT
- 날짜/시간 함수

## 사용 예시

- "KPI 대시보드를 엑셀로 만들어줘 (매출, 신규 고객, 리텐션)"
- "월간 매출 분석표를 생성해줘 (1월~12월)"
- "프로젝트 일정 간트차트를 엑셀로 작성해줘"
- "급여 계산 시트를 만들어줘 (기본급, 수당, 세금)"
- "예산 대비 실적 추적표를 생성해줘"

## 출력 형식

- **파일 형식**: `.xlsx` (Excel 2007+ 호환)
- **시트 구성**: 다중 시트 (요약 + 데이터 + 차트)
- **인쇄 설정**: A4 페이지, 페이지 번호, 인쇄 영역
- **수식 설명**: 어느 셀에 어떤 수식이 사용되었는지 문서화

## 주의사항

### Microsoft Excel 호환성

openpyxl 생성 파일은 Excel 2016+ 및 Google Sheets에서 정상 열람 가능합니다. 구버전 Excel(2003 이하)에서는 호환성 팩이 필요합니다.

### 대용량 데이터

10만 행 이상의 데이터는 `write_only=True` 모드를 사용하여 메모리 효율을 높입니다. 일반적인 보고서(수천 행 이하)는 기본 모드로 충분합니다.

### 한글 폰트

셀 내 한글 표시 시 '맑은 고딕' 또는 '나눔고딕' 폰트 설정을 권장합니다. 한글 폰트가 설치되지 않은 환경에서는 대체 폰트로 렌더링됩니다.

### 차트 제한

openpyxl 차트는 기본 형식만 지원합니다. 고급 차트(히스토그램, 폭포차트, 콤보 차트 등)가 필요한 경우 Excel에서 수동 수정하거나 `xlsxwriter` 라이브러리를 대안으로 사용합니다.

### 보안

개인정보(급여, 주민번호)가 포함된 파일은 시트 보호와 파일 암호화를 적용합니다. `openpyxl`은 시트 보호를 지원하지만 파일 암호화는 별도 도구가 필요합니다.

### 수식 언어

한국어 Excel과 영어 Excel의 수식 함수명이 다를 수 있습니다(예: SUM vs 합계). `openpyxl`은 영어 함수명을 사용하며, 한국어 Excel에서 자동 변환됩니다.

## 문제 해결

| 상황 | 해결 방법 |
|------|-----------|
| 파일 생성 실패 | openpyxl 설치 여부 확인: `pip install openpyxl`. 설치 후 재시도하세요 |
| 템플릿 미설정 | 보고서 유형과 필요한 지표 목록을 알려주시면 기본 구조로 생성해 드립니다 |
| 수식 오류 | 데이터 범위와 원하는 계산 방식을 설명해 주시면 수식을 수정해 드립니다 |
| 차트 미생성 | 차트 유형(막대/꺾은선/원형)과 데이터 범위를 명시해 주시면 생성해 드립니다 |
| 조건부 서식 미적용 | 조건(예: "1000 이상이면 빨간색")을 명확히 말씀해 주시면 적용해 드립니다 |
| 파일 크기 과대 | 이미지나 차트를 줄이거나 `write_only=True` 모드를 사용하세요 |

## 관련 스킬

- `moai-office:docx-generator` - DOCX(Word) 문서 생성
- `moai-office:pptx-designer` - 발표용 PPT 슬라이드 생성
- `moai-office:hwpx-writer` - 한글(HWPX) 문서 생성
- `moai-business:sbis365-analyst` - SBiS365 데이터 분석 (엑셀 변환 가능)

## 기술 참조

- **openpyxl 공식 문서**: https://openpyxl.readthedocs.io/
- **Excel 수식 참조**: Microsoft Excel 함수 레퍼런스
- **데이터 시각화 가이드**: 엑셀 차트 모범 사례