2016-11-02 4 views
1

Я просмотрел почти все предыдущие темы, но до сих пор не могу получить эту работу. Я пытаюсь добавить новый лист в существующую книгу. Мой код работает, но он продолжает добавлять намного больше (так много из них на самом деле) листов. Я не могу понять, solution.Below мой кодДобавить новый лист в существующую книгу в python

from openpyxl import load_workbook 
wb2 = load_workbook('template.xlsx') 
from xlutils.copy import copy as xl_copy 
wb = xl_copy(wb2) 
wb.create_sheet('sid1') 
wb.save('template.xlsx') 
+0

Я удивлен, что у вас нет другой ошибки. 'xlutils' не был разработан для работы с' openpyxl'. В частности, строка 'wb = xl_copy (wb2)' представляется для отказа. Даже если это почему-то не вызывает никаких ошибок, это совершенно необязательно, поскольку 'openpyxl' не нужен (и действительно не может использовать), что предоставляет' xlutils.copy'. –

ответ

3

Если вы хотите добавить лист в существующую таблицу, просто идти вперед и добавить новый лист в файл вместо копирования вашего load объекта и пытаясь добавить к нему новый лист.

from openpyxl import load_workbook 
wb2 = load_workbook('template.xlsx') 
wb2.create_sheet('sid1') 
wb2.save('template.xlsx') 
+0

это тоже не работает. Он добавляет много дополнительных листов, как указано ранее – fsociety

+1

@fsociety, я пробовал его локально, и он работал нормально. Вы уверены, что это весь код, который вы используете, а не просто шпинат большего кода. Я думаю, что может быть петля где-то –

+0

извинения, вы правы ... я только что понял, что я делал :) – fsociety