공유 블로그

파이썬으로 작업 안 하고 엑셀에 작업하다가 파이썬으로 자동화할 경우 기존 작성했던 내용들이 다 사라지는 것을 겪볼 수 있습니다.

그때 해결방법입니다.

 


 

import pandas as pd
from openpyxl import load_workbook

book = load_workbook(execlFileName)
writer = pd.ExcelWriter(execlFileName, engine='openpyxl') 
writer.book = book
writer.sheets = dict((ws.title, ws) for ws in book.worksheets)

newdf = pd.read_excel(SAVE)
newdf.to_excel(writer)
writer.save()

위코드로 해결하시면 되겠습니다.

해결안 될 시 댓글 주세요~

 

 

 

출처 : https://stackoverflow.com/questions/20219254/how-to-write-to-an-existing-excel-file-without-overwriting-data-using-pandas

 

--- 추가내용 ---

더보기

함수로 함 만들어 봤습니다~

 

import pandas as pd
from openpyxl import load_workbook

def RetainExcelsFile(execlFileName,newdf:pd.DataFrame):
    # 기존 파일 유지
    book = load_workbook(execlFileName)
    writer = pd.ExcelWriter(execlFileName, engine='openpyxl') 
    # with pd.ExcelWriter(execlFileName, engine='openpyxl') as writer:
    writer.book = book
    writer.sheets = dict((ws.title, ws) for ws in book.worksheets)
        
    newdf.to_excel(writer)
    writer.save()

 

공유하기

facebook twitter kakaoTalk naver band kakaostory Copy URL