Pythonのopenpyxl
パッケージを使用してExcelのシートをコピーする方法について説明します。
まず、openpyxl
というパッケージをインストールします。これはPythonでExcelを操作するためのパッケージです。
次に、Workbook.copy_worksheet
メソッドを使用してシートをコピーします。このメソッドはシート名ではなく、シートオブジェクトを引数として受け取ります。
以下に具体的なコードを示します。
from datetime import date
from openpyxl import load_workbook
wb = load_workbook('議事録.xlsx') # ワークブックをロード
for ws in wb.worksheets:
ws.sheet_view.tabSelected = None # シートの選択を解除
ws_template = wb['原紙'] # 「原紙」のシートを取得
ws_copy = wb.copy_worksheet(ws_template) # シートをコピー
today = date.today() # 当日の日付を取得
ws_copy.title = f'{today:%Y年%m月%d日}' # シート名を当日日付にする
wb.move_sheet(ws_copy, offset=-wb.index(ws_copy)) # シートを先頭へ移動
wb.active = 0 # 先頭のシートを再度選択状態にする
wb.save('議事録_変更後.xlsx') # ブック名を変更して保存
このコードは、議事録.xlsx
というワークブックの原紙
という名前のシートをコピーし、コピーしたシートの名前を当日の日付に変更し、そのシートをワークブックの先頭に移動します。
以上がPythonのopenpyxl
パッケージを使用してExcelのシートをコピーする方法です。この方法を使えば、Excelのシートのコピーと名前の変更を自動化することができます。.