I am trying to convert the DataFrame to excel without overwriting the existing sheet. The solution is using pd.ExcelWriter with openpyxl engine which supports append mode. Now, I have to increase the column size of the excel, I use pd.ExcelWriter with XlsxWriter engine but it overwrites the remaining sheets.
Openpyxl as an engine:
with pd.ExcelWriter("test.xlsx", engine="openpyxl", mode="a") as writer:
df.to_excel(writer, sheet_name="name", startrow=num, startcol=num)
XlsxWriter as an engine:
workbook = xlsxwriter.Workbook('test.xlsx')
worksheet = workbook.add_worksheet()
worksheet.set_column(0, 0, 20)
Can someone please suggest to me a solution where I can do both things:
- Keep the existing sheets
- Increase the column width
you can use your ExcelWriter to adjust the column width. Example below. Note that you can only add a new tab and the data with this, not update text within an existing tab. But, it will NOT delete any contents, like in case of xlsxwriter.