[英]XlsxWriter: Creating new worksheets
我正在嘗試使用XlsxWriter創建新工作表,以便在每次循環的新迭代中將數據寫入新工作表。
我的代碼如下:
workbook = xlsxwriter.Workbook('Report.xlsx')
for i in range(0, len(list)):
worksheet = workbook.add_worksheet()
#Extract data from the list and add it to the excel sheet
workbook.close()
現在,這種方法的問題是我只看到一個工作表,而不是多個工作表。
我哪里錯了?
根據注釋的更正,即使XlsxWriter API允許在修改之間關閉工作簿,它也只會在第一次關閉之前寫入更改。
import xlsxwriter
import openpyxl
workbook = xlsxwriter.Workbook('test.xlsx')
for i in range(10):
workbook.add_worksheet()
workbook.close()
assert len(workbook.worksheets()) == 10
assert len(openpyxl.load_workbook('test.xlsx').sheetnames) == 1
workbook = xlsxwriter.Workbook('test.xlsx')
for i in range(10):
workbook.add_worksheet()
workbook.close()
assert len(workbook.worksheets()) == 10
assert len(openpyxl.load_workbook('test.xlsx').sheetnames) == 10
在完成所有工作簿修改之后,您需要將workbook.close()
移出循環:
workbook = xlsxwriter.Workbook('Report.xlsx')
for i in range(0, len(list)):
worksheet = workbook.add_worksheet()
#Extract data from the list and add it to the excel sheet
workbook.close()
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.