「python openpyxl グラフ シート」
といった検索でアクセスがありました。
この検索キーワードだけでは、何を調べていらしたのかがわかりませんので、OpenPyXLを使ってExcelのグラフシートを取得するコードをご紹介します。
OpenPyXLを使ってグラフシートを取得するサンプル
以下のスクリプトを実行すると、Cドライブtempフォルダーのsample.xlsxファイルに含まれるグラフシートの枚数と、グラフシートのシート名が出力されます。
bk = xl.load_workbook(r'c:\temp\sample.xlsx')
# グラフシートの枚数を取得・出力
print(len(bk.chartsheets))
for i in bk.chartsheets:
print(i.title)
Workbooks.chartsheets属性でグラフシートを取得できる
OpenPyXLでは、Workbooks.chartsheets属性を使うと、グラフシートを表すChartsheetオブジェクトを要素として含むリストを取得できます。
Workbooks.chartsheets属性で取得できるのはリストですから、Python標準のlen関数を使って要素数、すなわちグラフシートの枚数を取得できます。
print(len(bk.chartsheets))
Workbooks.chartsheets属性で取得できるのはリストですから、for文を使って要素であるChartオブジェクトを順番に取得できます。
for i in bk.chartsheets:
上記のサンプルでは、for文で取得したChartオブジェクトのtitle属性で取得できるグラフシート名を出力しています。
print(i.title)
単独のグラフシートを取得する
Workbooks.chartsheets属性で取得できるのはリストですから、
bk.chartsheets[0]
で、先頭のグラフシートを取得でき、
bk.chartsheets[-1]
なら、最後のグラフシートを取得できます。
また「グラフ1」という名前のグラフシートがあれば、
bk.chartsheets['グラフ1']
で「グラフ1」グラフシートを取得できます。
最終更新日時:2023-05-23 09:09
Home » Python » OpenPyXLの使い方 » OpenPyXLでグラフシートを取得する-Workbook.chartsheets属性