Python(openpyxl)で、Excelの一覧表から個別シートを作成するコードをご紹介します。
ぜひ、お試しください。
一覧表から個別シートを作成する
以下のコードを実行すると、名簿一覧から個別表を作成します。
import openpyxl
#エクセルファイルを開く
wb = openpyxl.load_workbook('C:/Users/xxx/Desktop/test/test.xlsx')
#シートを変数格納
IchiranWs = wb['一覧表']
HinaWs = wb['雛形']
#IchiranWsの行ループ
for row in IchiranWs.iter_rows():
for cell in row:
#2行目以降だったら
if cell.row >=2 :
#IchiranWsの行データを取得
cells = [v.value for v in row]
#HinaWsをコピーしてシート名入力
sheet = wb.copy_worksheet(wb['雛形'])
sheet.title=cells[0]
#IchiranWsのデータを、sheetに転記
sheet['B1'] = cells[0]
sheet['B2'] = cells[1]
sheet['B3'] = cells[2]
sheet['D1'] = cells[3]
sheet['D1'].number_format = 'yyyy/m/d'
sheet['D2'] = cells[4]
sheet['D3'] = cells[5]
sheet['D4'] = cells[6]
break
#別名で保存
wb.save('C:/Users/xxx/Desktop/test/個別.xlsx')
コード実行前
[wb] ファイルの「一覧表」シートに、名簿があります。
「雛形」シートを用意します。
個別シートを作るときは、この「雛形」シートをコピーして使用します。
コード実行後
「氏名」ごとに、1つのシートを作成します。
指定セルに、該当データを転記しています。
動作環境
Python 3.7.4
openpyxl 3.0.5
この記事がお役に立ちますと幸いです。
・【Python】エクセルを自動処理する方法まとめ
【Python】エクセル処理を自動化:超便利55選
...
「Python 1年生 体験してわかる!会話でまなべる!」
初めての方でも安心して取り組めるように丁寧に解説
簡単なサンプルを作りながら、対話形式でプログラミングまで紹介
人工知能の導入としてもオススメの1冊です!
リンク