콘솔워크

pandas ExcelWriter 객체를 이용해서 기존 엑셀파일에 새로운 시트를 생성하여 dataframe을 저장하는 코드 본문

프로그래밍/python

pandas ExcelWriter 객체를 이용해서 기존 엑셀파일에 새로운 시트를 생성하여 dataframe을 저장하는 코드

이휘재123 2023. 4. 25. 18:02
반응형
    def df_to_excel(self, dtos):
        try:
            excel = os.path.join('filename.xlsx')

            if os.path.isfile(excel):
                with pd.ExcelWriter(bid_notice_excel, engine="openpyxl", mode="a", if_sheet_exists="replace") as writer:
                    pd.DataFrame.from_dict(dtos).to_excel(writer, sheet_name='sheet_name2', index=False)

            else:
                with pd.ExcelWriter(excel, engine="openpyxl") as writer:
                    pd.DataFrame.from_dict(dtos).to_excel(writer, sheet_name='sheet_name1', index=False)

        except Exception as e:
            print(e)

dtos는 각자 사용하고있는 dataframe을 토대로 작성.

 

sheet_name 부분은 각자 작성하고 싶은 시트이름을 입력하도록 설계하면 된다.

 

엑셀파일이 존재한다면 writer 객체를 'append' 모드로 적용

 

엑셀파일이 존재하지 않는다면 기본값인 'error' 모드로 적용

 

 

 

반응형