我有使用openpyxl將熊貓df寫入excel文件的腳本代碼。見Fill in pd data frame into existing excel sheet (using openpyxl v2.3.2)。用xlsxwriter將熊貓df寫入excel文件?
from openpyxl import load_workbook
import pandas as pd
import numpy as np
book=load_workbook("excel_proc.xlsx")
writer=pd.ExcelWriter("excel_proc.xlsx", engine="openpyxl")
writer.book = book
writer.sheets = dict((ws.title, ws) for ws in book.worksheets)
data_df.to_excel(writer, sheet_name="example", startrow=100, startcol=5, index=False)
writer.save()
該過程正常工作。但是,每個返回的excel文件在打開時報告它已損壞,因爲內容不可讀。 Excel可以修復它並再次保存。但這必須手動完成。由於我必須處理很多文件,我該如何解決/繞過?
或者,我該如何更改代碼才能使用「xlsxwriter」而不是「openpyxyl」?
當我只是用「engine =」xlsxwriter「」交換「engine =」openpyxl「」時,python告訴我「'工作表''對象在data_df.to_excel行沒有'write'屬性。
此外:Excel告訴我「已刪除的記錄名爲/xl/workbook.xml部分的範圍」是損壞,必須修復。我不知道,這是什麼意思
嘗試導入** xlsxwriter **包 – Shiva
您確定安裝了xlsxwriter(並且它是最新版本)嗎? – Clusks
你能發佈一個破壞excel文件的__reproducible__代碼嗎?當我嘗試你的代碼 - 它對我來說工作得很好。 – MaxU