【发布时间】:2021-10-10 07:08:06
【问题描述】:
我正在使用 Excelwriter 和 openpyxl 引擎,因为我想以附加模式打开 excel 文件。
我正在使用附加模式,以便在每次重新运行时清除工作簿中的先前工作表。但是我在使用下面的语法向 excel 添加格式时遇到了这个错误:-AttributeError: 'Workbook' object has no attribute 'add_format'
如何让它与 openpyxl 引擎一起工作
def write_dataframes_to_excel_sheet(dataframes, dir, name,writer):
#with pd.ExcelWriter(f'{dir}/{name}.xlsx', engine='xlsxwriter') as writer:
workbook = writer.book
worksheet = workbook.create_sheet(str(id))
writer.sheets[str(id)] = worksheet
COLUMN = 0
row = 0
for df in dataframes:
#worksheet.write_string(row, COLUMN, df.name)
row += 1
df.to_excel(writer, sheet_name=str(id),
startrow=row, startcol=COLUMN,index=False)
header_format= workbook.add_format({'bold':True,'fg_color' :'00C0C0C0','border': 1})
for col_num,value in enumerate(df.columns.values):
worksheet.write(0,col_num,value,header_format)
column_len=df[value].astype(str).str.len().max()
column_len=max(column_len,len(value))+3
worksheet.set_column(col_num,col_num,column_len)
row += df.shape[0] + 3
with pd.ExcelWriter(input_filename, engine='openpyxl',mode='a') as writer:
write_dataframes_to_excel_sheet(df_array, 'C:/Users/path',input_filename,writer)
【问题讨论】:
-
阅读您要使用的库的正确文档总是很有用的。
-
我做到了,我没有得到满足此要求的解决方案。如果你知道,你能帮忙吗
标签: excel pandas openpyxl pandas.excelwriter