파이썬/Package

OpenPyXL을 이용한 Python에서의 엑셀 파일 생성

코샵 2024. 9. 19. 13:50
반응형

이번 포스팅에서는 OpenPyXL을 이용하여 엑셀 파일을 생성하는 방법을 자세히 살펴보겠습니다.

OpenPyXL 설치

OpenPyXL은 pip를 통해 간단히 설치할 수 있습니다:

pip install openpyxl

새로운 엑셀 파일 생성

OpenPyXL을 사용하여 새로운 엑셀 파일을 생성하는 방법은 다음과 같습니다:

from openpyxl import Workbook

# 새로운 워크북(엑셀 파일) 생성
workbook = Workbook()

# 현재 활성화된 시트 가져오기
worksheet = workbook.active

# 시트 이름 변경
worksheet.title = "My Sheet"

# 파일 저장
workbook.save("example.xlsx")

이 코드를 실행하면 example.xlsx라는 새로운 엑셀 파일이 생성됩니다.

데이터 입력

워크시트에 데이터를 입력하는 방법은 다음과 같습니다:

# 셀에 값 입력
worksheet['A1'] = "Name"
worksheet['B1'] = "Age"
worksheet['A2'] = "Alice"
worksheet['B2'] = 25
worksheet['A3'] = "Bob"
worksheet['B3'] = 30

이처럼 셀 주소를 사용하여 직접 값을 입력할 수 있습니다.

행 및 열 삽입

새로운 행이나 열을 삽입하는 방법은 다음과 같습니다:

# 행 삽입
worksheet.insert_rows(3)

# 열 삽입
worksheet.insert_cols(3)

이렇게 하면 3번째 행과 3번째 열이 각각 삽입됩니다.

서식 지정

셀의 서식을 지정하는 방법은 다음과 같습니다:

from openpyxl.styles import Font, Alignment

# 글꼴 스타일 설정
worksheet['A1'].font = Font(bold=True)

# 정렬 설정
worksheet['A1'].alignment = Alignment(horizontal='center', vertical='center')

이와 같이 OpenPyXL의 스타일 관련 클래스를 사용하여 다양한 서식을 적용할 수 있습니다.

차트 생성

엑셀 파일에 차트를 생성하는 방법은 다음과 같습니다:

from openpyxl.chart import BarChart, Reference

# 차트 데이터 범위 지정
values = Reference(worksheet, min_row=2, max_row=3, min_col=2, max_col=2)

# 차트 생성 및 워크시트에 추가
chart = BarChart()
chart.add_data(values)
worksheet.add_chart(chart, "D2")

이 코드에서는 바차트를 생성하고 워크시트의 D2 셀에 삽입합니다.

워크시트 복사 및 이동

워크시트를 복사하거나 이동하는 방법은 다음과 같습니다:

# 워크시트 복사
new_worksheet = workbook.copy_worksheet(worksheet)
new_worksheet.title = "Copied Sheet"

# 워크시트 이동
workbook.move_sheet(new_worksheet, index=0)

 

이처럼 OpenPyXL을 사용하면 Python에서 엑셀 파일을 쉽게 생성하고 조작할 수 있습니다. 데이터 입력, 서식 지정, 차트 생성, 워크시트 관리 등 다양한 작업을 수행할 수 있습니다. OpenPyXL은 강력하면서도 사용하기 쉬운 라이브러리이므로, 데이터 분석이나 보고서 작성 등의 업무에서 유용하게 활용될 수 있습니다.