Home » Python » OpenPyXLの使い方 » OpenPyXLでグラフシートを取得する-Workbook.chartsheets属性

OpenPyXLでグラフシートを取得する-Workbook.chartsheets属性

動作検証バージョン:Windows 10 Pro(64-bit)+ Python 3.11.1(64-bit) + OpenPyXL 3.0.10

「python openpyxl グラフ シート」
といった検索でアクセスがありました。

この検索キーワードだけでは、何を調べていらしたのかがわかりませんので、OpenPyXLを使ってExcelのグラフシートを取得するコードをご紹介します。

OpenPyXLを使ってグラフシートを取得するサンプル

以下のスクリプトを実行すると、Cドライブtempフォルダーのsample.xlsxファイルに含まれるグラフシートの枚数と、グラフシートのシート名が出力されます。

import openpyxl as xl

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属性

「OpenPyXLの使い方」の記事一覧

検索


Copyright © インストラクターのネタ帳 All Rights Reserved.

.