导出特定工作表,并保存不同的文件openpyxl

时间:2017-09-15 10:24:41

标签: python excel openpyxl

我正在尝试从excel文件导出特定工作表,但没有结果。我想将一张特定纸张导出到一个全新的文件我写的是:

import openpyxl
book = openpyxl.load_workbook('C:\Python\test.xlsx')
a = (book.get_sheet_names())
sheet1 = book[a[5]]
sheet1.save('C:\Python\sheet2.xlsx')

另外,我不能做的另一件事,如果我有名字,就找一张纸。

如果问题很简单,我道歉,但是自从我开始使用python以来已经过了几天了。)

1 个答案:

答案 0 :(得分:2)

好吧,openpyxl确实提供了copy_worksheet(),但不能在不同的工作簿之间使用。您可以逐个单元格复制工作表,也可以在内存中修改起始工作簿,然后可以使用其他文件名保存。这是代码

import openpyxl

# your starting wb with 2 Sheets: Sheet1 and Sheet2
wb = openpyxl.load_workbook('test.xlsx')

sheets = wb.sheetnames # ['Sheet1', 'Sheet2']

for s in sheets:

    if s != 'Sheet2':
        sheet_name = wb.get_sheet_by_name(s)
        wb.remove_sheet(sheet_name)

# your final wb with just Sheet1
wb.save('test_with_just_sheet2.xlsx')