【1行で実現】openpyxlで新しいブックを作成【Python】

スポンサードリンク
アイキャッチ Python
過去の自分
過去の自分

何もない状態から、タイムカードを作ることになった…。
既存のエクセルファイルではなく、
新しいブックを1から作って編集するにはどうしたらいいの?

今の自分
今の自分

なるほど、新しいブックを作成する方法ですね!
タイムカードを作成して保存するコードも紹介いたします!

Pythonのopenpyxlで新しいブックを作成する方法を、
Python歴3年の私ができるだけわかりやすく解説し、解決に導きます。

スポンサードリンク

Pythonのopenpyxlで新しいブックを作成するには

「Workbook()」を使用します。

全コード

ひとまず全コードを網羅します。解説は後ほど行います。

import openpyxl

wb = openpyxl.Workbook()
ws = wb.active

ws['A1'] = 'New Work Book'

wb.save('new_work_book.xlsx')
wb = openpyxl.Workbook()

実行見本

実行見本

事前準備

  • openpyxlのインストール

既存のエクセルファイルを編集するには「openpyxl」のインストールが必要です。

openpyxlのインストール方法

openpyxlを初めて使用する場合は、下記コードを入力・実行して、インストールしてください。

pip install openpyxl

※openpyxlを使用したことがある場合は、このインストール作業は不要です。

openpyxlの基礎解説

既存ファイルを開いて保存する方法などの操作の基本解説は、下記記事で行っております。
ご参考ください。

解説

wb = openpyxl.Workbook()

上記一文を記述することで、新しいブックを作成することができます。

【 変数 = openpyxl.Workbook() 】
※Wは大文字です。小文字だとエラーが出ます。

その後は、4行目で「新しく作ったブック」のアクティブなシートを取得し、
6行目で取得したシートのセルに書き込みをしています。

シートを取得する方法やシート名を変更する方法などは下記記事で解説しております。

スポンサードリンク

演習(実践例)

前項で作成した新しいブックを使って、何か作ってみたくなったのではないでしょうか。

それでは冒頭で例に挙がった「タイムカード」を作ってみましょう。
簡単に作れるにしていますので、チャレンジしてみてください。

全コード

import openpyxl
import datetime

today = datetime.datetime.today().strftime('%Y.%m.%d')
nowtime = datetime.datetime.today().strftime('%H:%M')

wb = openpyxl.Workbook()
ws = wb.active

ws['A1'] = '日付'
ws['B1'] = '出勤者'
ws['C1'] = '出勤時刻'
ws['D1'] = '退勤時刻'

ws['A2'] = today
ws['B2'] = 'Utatane'
ws['C2'] = nowtime

wb.save( today + 'MyTimeCard.xlsx')

実行見本

実行見本

解説

新しいブックを作成し、「今日の日付」や「現在の時間」を書き込みしています。

全て下記記事で解説済のため、今回詳細な解説は割愛させていただきます。

退社時は下記コードを実行することで、「退勤時刻」欄に時間が入ります。

import openpyxl
import datetime

today = datetime.datetime.today().strftime('%Y.%m.%d')
nowtime = datetime.datetime.today().strftime('%H:%M')

wb = openpyxl.load_workbook( today + 'MyTimeCard.xlsx')
ws = wb.active

ws['D2'] = nowtime

wb.save( today + 'MyTimeCard.xlsx')
実行見本

切れている日付が気になる方は、下記記事で解説している「列の幅を自動調整する方法」をお試しください。

スポンサードリンク

うまく動作しない時

エラーが出る

○○ is not defined

今まで出てきていない変数などを処理しようとした時に出るエラーです。
変数名などが間違っていないかチェックしましょう。

詳しい解説は、下記記事をご参考ください。

その他のエラー

その他のエラーが出た場合は、エラー文をコピーしてNETで検索してみましょう。

スポンサードリンク

最後に

Pythonのopenpyxlで新しいブックを作成する方法を解説いたしました。

「複数の既存ファイルのデータを新しいファイルにまとめる」という処理が必要になった場合にも便利ですので、ぜひご活用ください。

当ブログでは、Pythonに関する情報を配信しております。
この記事がわかりやすいと感じた方は、他の記事も読んでいってください。

最後までお読みいただき、ありがとうございました。がんばってください!

タイトルとURLをコピーしました