2014-11-24 76 views
7

請能有人給我一個例子,如何 整個工作表與風格(從行和列) 複製到第二個工作表在同一工作簿? (在新的工作簿中也是可能的)複製整個工作表

謝謝。

P.S .:我試圖做一個深層次的拷貝,但是保存更改後的數據單元失敗。
目的是:我嘗試用我的數據填充一些工作表,第一個工作表是我的模板。

我成功複製了值,但只有一些款式。 我使用的是最新版本的openpyxl,所以請不要使用1.x方法。

回答

8

版本2.4將允許你這樣做:copy_worksheet

>>> source = wb.active 
>>> target = wb.copy_worksheet(source) 

對於舊的你也許可以在源代碼here

更新複製:你不能簡單地移植這些代碼到舊版本

+1

值得指出您引用的版本尚未有最終版本。 – 2016-06-22 10:57:09

+1

另一點是,這個「copy_worksheet」函數似乎只限於同一個工作簿。 (來源:http://openpyxl.readthedocs.io/en/default/api/openpyxl.worksheet.copier.html?highlight=copy_worksheet「...從一張工作表到另一張工作簿內的另一張工作表。」) 我想要將工作表從「模板」工作簿複製到另一個輸出工作簿。 – Jason 2017-08-30 09:42:52

1

你不能輕易做到這一點。最好的方法可能是bug 171

+0

感謝您的支持我。最後我發現python-relatorio更有幫助。很難找到... – 2014-11-25 20:37:42

0

中描述的問題我有同樣的問題。我解決了使用複製,而不是deepcopy。我找到了這個解決方案site

我希望這適合你!

+0

使用deepcopy的原因是創建一個新對象作爲另一個對象的副本,而不僅僅是參考 – Sam 2016-07-29 13:36:30

相關問題