動作検証バージョン:Windows 10 + Python 3.7.3 + OpenPyXL 2.6.2
「openpyxl フルパスでのワークブック指定 エクセルファイルの開き方」
という検索キーワードをきっかけにして、openpyxl.load_workbook()関数でブックをフルパス指定するにはどうすればいいのか書きました。
Excel VBAに慣れていて、PythonやOpenPyXLをほとんど触ったことのない私には、OpenPyXLにはなかなか興味深い挙動があります。
[スポンサードリンク]
openpyxl.Workbook()でブックを作成しworkbook.save()で保存するサンプル
openpyxl.Workbook()関数で作成したブックの、シートの名前は「Sheet」で、オブジェクト名は「Sheet1」という状態に、私はまず驚かされました。
import openpyxl
bk = openpyxl.Workbook()
bk.save(r'C:\temp\foofoo.xlsx')
bk = openpyxl.Workbook()
bk.save(r'C:\temp\foofoo.xlsx')
上記のコードを実行して、Cドライブのtempフォルダーに作成された、foofoo.xlsxをExcelで開いてみると、シートは下図のように「Sheet」という名前になっています。
普段のExcelでは見ることのないシート名のため、なかなか新鮮です。
更にVBEを起動して、プロジェクトエクスプローラ・プロパティウィンドウを確認すると下図のとおり、オブジェクト名は、「Sheet1」になっています。
Excel VBAのWorkbooks.Addメソッドでブックを作成した場合
もちろんExcel VBAで
Workbooks.Add
を実行して、新規にブックを作成した場合は、シート名もオブジェクト名も「Sheet1」です。
最終更新日時:2023-01-17 18:38
[スポンサードリンク]
- Newer:OpenPyXLで全シート名を取得するWorkbook.get_sheet_names()メソッド使用時のDeprecationWarning
- Older:openpyxl.load_workbook()関数でブックをフルパス指定するには
Home » Python » OpenPyXLの使い方 » openpyxl.Workbook()関数でブックを作成した場合のシート名とオブジェクト名