web-dev-qa-db-ja.com

openpyxlでワークシート全体をコピーする

スタイルを含むワークシート全体(行と列から)を同じワークブックの2番目のワークシートにコピーする方法を教えてください。 (新しいワークブックでも可能です)

ありがとうございました。

PS:ディープコピーを行おうとしましたが、変更されたデータセルを保存できませんでした。
目的は:一部のワークシートにデータを入力しようとし、最初のワークシートがテンプレートです。

値のコピーに成功しましたただし、一部のスタイルのみ。私は最新バージョンのopenpyxlを使用しているため、1.xメソッドは使用しないでください。

11
ralf.w.

バージョン2.4では、これを行うことができます: copy_worksheet

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

古いものについては、おそらくソースコードを here からコピーできます。

UPDATE:このコードを単に古いバージョンに移植することはできません図書館

17
psychok7

これを簡単に行うことはできません。最善の方法は、おそらく bug 171 で説明されている方法です。

2
Charlie Clark

私も同じ問題を抱えていました。ディープコピーの代わりにコピーを使用して解決しました。私はこれで解決策を見つけました site

これがうまくいくことを願っています!

0
Sam