将现有工作表添加到另一个现有工作簿中。 openpyxl

问题描述 投票:0回答:1

我正在尝试创建一个新的excel,其中包含excel文件列表的第一个选项卡。为此,我试图将每张纸“复制粘贴”到新工作簿中,但是我还没有找到该怎么做的方法。

我尝试了以下操作,但是当然wb.create_sheet(sheet)行不起作用。

wb = Workbook('new.xlsx')

for i in range(len(file_list)):
    excel = load_workbook(file_list[i], read_only=False)
    sheet = excel[excel.sheetnames[0]]
    sheet.Name = tab_names_list[i]

    wb.create_sheet(sheet)


wb.save('new.xlsx')

同时用wb.create_sheet(sheet)替换wb.copy_worksheet(sheet)会导致错误ValueError: Cannot copy worksheets in read-only or write-only mode

我应该使用哪些openpyxl函数?

python openpyxl
1个回答
0
投票

尝试这样的事情:

file_list = [file_1, file_2]
sheet_names = ['file1_name', 'file2_name']

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

for file, names in zip(file_list, sheet_names):
    x.to_excel(writer, sheet_name=a)
writer.save()

© www.soinside.com 2019 - 2024. All rights reserved.