0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

【Python】日付の代入や入力内容の削除を行う。

Posted at

pythonを使用してExcelファイルの操作を勉強しています。
本日の気づき(復習)は、日付の代入や入力内容の削除に関してです。
pythonでExcelを操作するため、openpyxlというパッケージを使用しています。

発注書とかの書類をエクセルで作ってある場合って多いと思います。
新しいブックを作成するたびに前回のブックをコピーして内容を消して・・・。
そこまでの手間ではありませんが、プログラムで行った方がミスも減るのでお勧めかなとは思います。

image.png

と言う訳で、上の様なブック「申請書」を

image.png

この様に初期化して、日付だけ当日のモノを入力しておきたいです。

date.todayメソッド

cell.value = date.today()

日付の入力にはdatetimeモジュールを使います。

時刻も記入したい場合は

cell.value = datetime.now()

上記のようにdatetime.nowメソッドを使用します。

入力内容削除

cell.value = None

Noneを代入することで、内容を削除します
セルを削除する訳では無いのでそこは安心です。

最終的なコード

from datetime import date, datetime
from openpyxl import load_workbook

wb = load_workbook('申請書.xlsx')
ws = wb.active

ws['D4'].value = '営業部'
ws['D5'].value = '田中一郎'
ws['D6'].value = date.today()

for row in ws.iter_rows(min_row=9, max_row=ws.max_row-6, min_col=2, max_col=7):
    row[0].value = None
    row[4].value = None
    row[5].value = None

wb.save('申請書_初期化.xlsx')

セルの記述を「=TODAY()」にしておいてもいいのですが、
そちらだと、日付をまたいだ時がめんどそうですね。

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?