[英]how to add the worksheet object in openpyxl to the new sheet of the existing xlsx document
我做了很多研究並未能解決這個問題,所以我來這里尋求幫助。 我從下面的文件中讀取了工作表對象,
sheet_2_workbook = openpyxl. load_workbook(sheet_2_path)
sheet_2 = sheet_2_workbook.worksheets\[0\]
如題所述,我想將其添加到existing.xlsx文件的new sheet中,應該怎么辦?
我嘗試如下實現,但是通過這種方法獲得的新文檔會丟失一些原始格式,包括單元格背景顏色和合並單元格
old_wb = openpyxl. load_workbook(file_list[i])
old_sheet_name = old_wb. get_sheet_names()[0]
old_ws = old_wb[old_sheet_name]
ws2 = combined_wb.create_sheet(sheet_name)
for row in old_ws.values:
ws2.append(row)
我確定文件中讀取的工作表對象包含這些格式,因為我用以下代碼轉儲的 .xlsx 文檔具有上述格式
sheet_2_workbook. save(filename = temp_save_path)
我最初的想法,不是這方面的專家;
我將如何使用 openpyxl 完成將工作表對象添加到現有 Excel 文檔中的新工作表的任務:
導入 openpyxl 模塊
使用 load_workbook() 函數加載現有的 Excel 文檔
使用 Workbook 對象的 create_sheet() 方法創建一個新工作表
或者,您可以在調用 create_sheet() 方法時將新工作表的名稱指定為字符串
使用 save() 方法保存更改(要保留格式,您可以使用 copy_worksheet() 創建原始工作表的副本並將其添加到工作簿。
導入 openpyxl
workbook = openpyxl.load_workbook('existing_document.xlsx')
sheet_2_workbook = openpyxl.load_workbook(sheet_2_path) sheet_2 = sheet_2_workbook.worksheets[0]
new_sheet = workbook.copy_worksheet(sheet_2) // 或者,您可以將新工作表的名稱指定為字符串 // new_sheet = workbook.copy_worksheet(sheet_2, 'Sheet2')
workbook.save('existing_document.xlsx')
(Stack 的新手,所以格式化技巧不是最好的)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.