[Python] 361 Excelセルの日付をシート名にする openpyxl

[Mac M2 Pro 12CPU, Ventura 13.6, Python 3.10.4]

Excelシートの1枚目A2セルにある日付をyymmdd形式に変換し、シート名にするスクリプトです。

ChatGPTのAPIが不調のため、以前のようにネット検索で調べました。やはりネット検索スキルはAI時代でも必須ですね。

import openpyxl
from openpyxl import load_workbook
from datetime import datetime, timedelta

def sheet_naming():
      import warnings
      warnings.simplefilter(action='ignore', category=UserWarning)

      # Excelファイルを読み込む
      file = 'test.xlsx'
      bk = openpyxl.load_workbook(file)

      # 先頭シートを取得 
      sheet = bk.worksheets[0]
      # 日付セルA2の値(5桁整数,表示はmm/dd)を取得
      date0 = sheet['A2'].value

      # date0をyymmdd形式に変換する
      date = datetime(1899, 12, 30) + timedelta(days=date0)
      date_str = date.strftime('%y%m%d')
      print("date_str: " + date_str)

      # シート名を変更する
      sheet.title = date_str
      # 変更を保存する
      bk.save(file)