Tiny Finger Point Hand With Heart
본문 바로가기
Python/기타

[python] 파이썬으로 엑셀 파일을 만들어보자(openpyxl)

by yoondii 2023. 3. 23.
728x90
반응형

업무자동화의 기본 엑셀파일 만들기를 해보자

 

먼저 아래 라이브러리를 깔아야한다.

pip install openpyxl

 

간단하게 담당자와 시작일만 입력되게 만들어보았다.

1. 라이브러리를 불러온다.

 

2. 먼저 WeeklyWorkPlan이라는 클래스를 만들어 인스턴스를 선언하였다. 

여기서 wb는 워크북, ws는 워크시트를 뜻한다.  

 

3. __init__함수는 생성자메서드다. 생성자를 객체화 시 바로 수행할 내용을 작성한다.

start_date, manager, sheet_no 세 개의 인자를 받는다.

이 인자들은 인스턴스의 속성(attribute)으로 할당된다. 

Workbook()openpyxl 라이브러리를 사용하여 새로운 엑셀 파일을 생성하는 함수이다.

이 함수를 호출한 결과를 self.wb 속성에 할당한다.

self.wb에서 sheet_no에 해당하는 워크시트(worksheet)를 선택하여 self.ws 속성에 할당한다.

마지막으로 self.set_title()메서드를 호출한다.

이 메서드는self.ws의 첫 번째 셀에 start_datemanager 정보를 담은 제목을 쓰는 역할을 한다.

 

4. 할당된 값들은 set_title함수는 지정된 워크시트의 셀에 할당된 값을 입력해 주는 역할을 한다.

 

5. save함수는 입력받은 값으로 엑셀이름을 지정하고 파일을 저장하는 역할을 한다.

나는 생성이 되면 '생성완료'가 출력되도록 함께 써주었다.(중간에 오타를 발견 못하고 계속 생성이 안되길래 써줌..ㅎ)

 

6. 마지막으로 생성자를 입력받고 파일이름까지 입력받기.

 

7. 아래 그림처럼 엑셀파일이 만들어진 것을 볼 수 있다.

 

 

공식문서가 잘 나와있고, 구글에도 많이 있기 때문에 추가적인 기능도 활용이 가능하다. 셀서식저장 등, 나중에 더 시도해보겠다.

 

https://openpyxl.readthedocs.io/

 

openpyxl - A Python library to read/write Excel 2010 xlsx/xlsm files — openpyxl 3.1.2 documentation

1. Please join the group and create a branch (https://foss.heptapod.net/openpyxl/openpyxl/) and follow the Merge Request Start Guide. for each independent feature, don’t try to fix all problems at the same time, it’s easier for those who will review an

openpyxl.readthedocs.io

 

728x90
반응형

댓글