xlsxwriter会覆盖上一页

时间:2017-03-15 21:35:25

标签: python python-3.x pandas

我正在尝试将一个数据透视表放在第二张纸上的一列和详细信息上。但是xlsxwriter正在覆盖详细信息表。

pivot = pd.pivot_table(df2, index=['Customer_Name'], values=['Billed_Net_Value', 'Sales_Order_Net_Value', 'Open_Amount'], aggfunc=np.sum)
writer = pd.ExcelWriter('SAP.xlsx', engine='xlsxwriter')
pivot.to_excel(writer, sheet_name='Pivot')
writer.save()

filename = 'SAP.xlsx'
workbook = xlsxwriter.Workbook(filename)
worksheet = workbook.add_worksheet('Detail')

2 个答案:

答案 0 :(得分:2)

我认为你可以通过推迟Select DateTime.Parse(LastModifiedUtcDateTimeTicks, "dd/MM/yyyy HH:mm:ss", null) AS ProcessedTime FROM @extractVariable 电话来实现这一目的:

.save()

答案 1 :(得分:1)

在您的示例中,Workbook()构造函数创建一个新文件,该文件将覆盖在Pandas中创建的文件。

如果要将其他数据框添加到工作簿,可以使用其他工作表名称调用to_excel(),如下所示:

writer = pd.ExcelWriter('SAP.xlsx', engine='xlsxwriter')

pivot.to_excel(writer, sheet_name='Pivot')
df2.to_excel(writer, sheet_name='Sheet2')
writer.save()

如果您想使用XlsxWriter apis添加工作表,可以按以下步骤操作:

writer = pd.ExcelWriter('SAP.xlsx', engine='xlsxwriter')

pivot.to_excel(writer, sheet_name='Pivot')

workbook  = writer.book
worksheet = workbook.add_worksheet('Detail')
writer.save()

另请参阅XlsxWriter文档中的Working with Pandas

相关问题