topic★★★★★난이도
openpyxl — 엑셀 파일을 코드로 조작
엑셀 파일(.xlsx)의 셀 읽기·쓰기·서식 적용을 Python 코드로 자동화하는 라이브러리.
#openpyxl#엑셀#자동화#보고서
왜 배우는가
매달 반복되는 엑셀 보고서 작성을 자동화할 수 있다. 서식·차트·수식까지 코드로 제어한다.
openpyxl은 엑셀 파일을 직접 열어서 셀 하나하나를 코드로 조작하는 도구다. pandas가 데이터 분석에 특화되었다면, openpyxl은 엑셀 파일의 서식·셀 병합·차트 삽입 같은 '엑셀 고유 기능'을 다룰 때 쓴다.
| 용도 | 설명 |
|---|---|
| `load_workbook()` | 기존 엑셀 파일 열기 |
| `ws['A1'].value` | 특정 셀 값 읽기/쓰기 |
| `ws.merge_cells()` | 셀 병합 |
| `Font, PatternFill` | 글꼴·배경색 서식 적용 |
| `wb.save()` | 수정된 파일 저장 |
Workbook()으로 새 파일을 만들고, 셀에 값과 서식을 지정한 뒤 save()로 저장한다. 기존 파일을 열려면 load_workbook()을 사용한다.
Claude Code에서 "매월 자동으로 엑셀 보고서 양식을 만들어줘"라고 하면 openpyxl로 서식이 적용된 템플릿을 생성해준다. pandas로 데이터를 가공하고 openpyxl로 예쁘게 꾸미는 조합이 실무에서 가장 많이 쓰인다.