DOCX 문서 업무 자동화 체험하기
간단한 문서는 워드 프로그램에서 직접 작성하는 것이 빠릅니다.
하지만 아래와 같은 경우는 어떨까요?
-
대량의 데이터를 포함한 엑셀 파일에서 데이터를 불러와 워드 파일에
표 형태로 삽입
하는 경우 -
동일한 문서 템플릿(예: 월 매출 보고서)에서 매달
반복되는 작업
을 수행하는 경우
위와 같은 경우에는 반복 작업을 빠르게 처리하는 파이썬 프로그램으로 문서를 작성하는 것이 훨씬 효율적입니다.
코드 에디터의 초록색으로 표시된 ▶︎ 실행
버튼을 누르고, 워드 파일에 생성된 테이블(Table, 표)을 확인해 보세요!
가볍게 읽는 코드 설명
복잡해 보이는 코드에 부담스러워하실 필요 없습니다.
파이썬 기초 이론을 배우고 AI와 함께 코드를 작성해나가다 보면, 실습 화면의 코드가 어떻게 동작하는지 충분히 이해할 수 있게 됩니다.
코딩은
AI
에게 맞기세요. 여러분은 원리만 이해하시면 됩니다.
1. 필요한 라이브러리 불러오기
openpyxl 및 python-docx 라이브러리 불러오기
# 엑셀 파일을 다루는 라이브러리
import openpyxl
# 워드 문서를 생성하고 수정하는 라이브러리
from docx import Document
2. 엑셀 파일 불러오기
load_workbook 함수로 엑셀 파일 불러오기
# 데이터를 포함한 엑셀 파일을 불러옴
wb = openpyxl.load_workbook('input_file.xlsx')
# 현재 활성화된 시트를 가져옴
sheet = wb.active
3. 워드 문서 생성
Document 클래스로 워드 문서 생성
# 새 워드 문서 생성
doc = Document()
4. 보고서 제목 추가
add_heading 함수로 제목 추가
# 워드 문서에 제목 추가
doc.add_heading('2024년 1분기 판매 실적 보고서', 0)
5. 표 생성 및 열 제목 설정
표 생성 및 열 제목 설정
# 1행 5열로 구성된 표를 만듦
table = doc.add_table(rows=1, cols=5)
# 표에 테두리 스타일을 추가
table.style = 'Table Grid'
# 첫 번째 행(열 제목)을 설정
hdr_cells = table.rows[0].cells
# 열 제목 설정
hdr_cells[0].text = '월'
hdr_cells[1].text = '제품'
hdr_cells[2].text = '판매량'
hdr_cells[3].text = '객단가'
hdr_cells[4].text = '매출'
6. 엑셀 데이터 추가 및 워드 문서 저장
엑셀 데이터 추가 및 워드 문서 저장
# 2번째 줄부터 데이터를 읽어와 표에 추가
for row in sheet.iter_rows(min_row=2, values_only=True):
# 각 열의 데이터를 변수로 저장
month, product, sales, price, revenue = row
# 새로운 행을 표에 추가합니다.
row_cells = table.add_row().cells
row_cells[0].text = str(month) # '월' 데이터를 텍스트로 변환하여 추가
row_cells[1].text = product # '제품' 데이터를 추가
row_cells[2].text = str(sales) # '판매량' 데이터를 텍스트로 변환하여 추가
row_cells[3].text = str(price) # '객단가' 데이터를 텍스트로 변환하여 추가
row_cells[4].text = str(revenue) # '매출' 데이터를 텍스트로 변환하여 추가
# 워드 문서를 'output_file.docx'라는 이름으로 저장
doc.save('output_file.docx')
지금까지 소개한 .xlsx
, .pptx
, .docx
파일을 파이썬 코드로 작성하는 방법은 퇴근을 앞당기는 업무 자동화 필수 지식 코스의 Chapter 1, 2에서 자세히 다루겠습니다.
이번 수업에서는 부담 없이 코드를 실행하고 앞으로 배울 내용에 대한 미리보기를 체험해보세요! 🚀