无论何时调用该方法,我都需要向现有工作簿中添加新工作表并在其上写入新数据。我检查了这个answer,但仍然找不到解决方案。现在发生的是,每当我调用该方法时,现有数据就会被新数据覆盖。我的方法如下。
import xlsxwriter
def writeToExcel(pattern, cashList, startDate, endDate):
workbook=xlsxwriter.Workbook('Expenses01.xlsx')
worksheet=workbook.add_worksheet()
bold = workbook.add_format({'bold': True})
worksheet.set_column('A:A', 10)
worksheet.set_column('B:C', 20)
worksheet.write('A1', 'Date', bold)
worksheet.write('B1', 'Replenished Amount', bold)
worksheet.write('C1', 'Prediction', bold)
worksheet.write('D1', 'Cost', bold)
date1=startDate
date2=endDate
date1=date1.strftime('%Y-%m-%d')
date2=date2.strftime('%Y-%m-%d')
start=datetime.datetime.strptime(date1, '%Y-%m-%d')
end = datetime.datetime.strptime(date2, '%Y-%m-%d')
#print date1
#print type(date1)
step=datetime.timedelta(days=1)
row=1
col=0
i=0
while start<=end:
print start.date()
print row
date1=start.date()
#print type(date1)
date_format = workbook.add_format({'num_format': 'dd/mm/yy'})
worksheet.write_datetime(row, col, date1, date_format)
worksheet.write_number(row, col+1, listReplenished[i])
worksheet.write_number(row, col+2, cashCost[i]*100)
row+=1
start+=step
i=i+1
worksheet.write_number(1, col+3, cost)
workbook.close()
如何在此Expenses01.xlsx中添加新工作表,并在每次方法调用时在该新工作表上写入数据。任何建议都会很有帮助