Morning,
I have a dataframe which I am splitting into multiple sheets based on the Trading Book in a specific column. Once exported to individual sheets I'd like to autofit the data, hide gridlines and centre align the data and freeze panes on a particular cell ($B$2). The export has been done but the formatting in Excel is not working, I'm stuck on the autofit:
dfTemp = { 'Trading_Book': ['A', 'A', 'A',
'B', 'B', 'B',
'C', 'C', 'C',
],
'Client': ['AA', 'AA', 'AA',
'BB', 'BB', 'BB',
'CC', 'CC', 'CC',
],
}
dfTemp = pd.DataFrame.from_dict(dfTemp)
print(dfTemp)
# Export each Trading Books data to a separate sheet in Excel
excel_writer = pd.ExcelWriter('C:\EOM_ML_201901\outputs\Excel_Data.xlsx')
dfTemp.to_excel(excel_writer, sheet_name='Consolidated')
# Get Book List
Books = dfTemp['Trading_Book'].unique().tolist()
# For each book send to Excel sheet
for myname in Books:
mydf = dfTemp.loc[dfTemp.Trading_Book == myname]
mydf.to_excel(excel_writer, sheet_name=myname)
# Autofil columns
for column in mydf:
column_length = max(mydf[column].astype(str).map(len).max(), len(column))
col_idx = mydf.columns.get_loc(column)
excel_writer.sheets[myname].set_column(col_idx, col_idx, column_length)
excel_writer.save()
Any assistance would be appreciated.