Home » Python » xlrdの使い方 » xlrdで最後・右端のシートを取得する

xlrdで最後・右端のシートを取得する

動作検証バージョン:Windows 10 + Python 3.7.3 + xlrd 1.2.0

Excelデータを取得・操作するPythonのライブラリは、いくつも種類があります。
当然ライブラリごとに仕様が異なり、興味深く触っています。

xlrdの場合どのようなコードで、最後・右端のシートを取得できるのかが気になりました。

[スポンサードリンク]

Book.sheet_by_index()とBook.nsheetsを使って最後・右端のシートを取得する

xlrdの場合、以下のスクリプトを実行すると、Cドライブtempフォルダーに存在するfoo.xlsxブックの、最後・右端のシート名が出力されます。
import xlrd
bk = xlrd.open_workbook('C:\\temp\\foo.xlsx')
sh = bk.sheet_by_index(wb.nsheets - 1)
print(sh.name)

Book.nsheetsでブックに含まれるシートの枚数を取得できます。

取得したシート枚数から「- 1」した値をBook.sheet_by_index()の引数に指定して、Sheetを取得しています。

Book.sheets()で返されたリストから最後・右端のシートを取得する

以下のようなスクリプトでも、Cドライブtempフォルダーに存在するfoo.xlsxブックの、最後・右端のシート名が出力されます。
import xlrd
bk = xlrd.open_workbook('C:\\temp\\foo.xlsx')
sh = bk.sheets()[-1]
print(sh.name)

Book.sheets()を使うと、ブックに含まれるシートのリストを取得できます。

取得したリストのインデックスに「-1」を指定して、最後・右端のシートを取得しています。

OpenPyXLのWorkbook.worksheets[-1]や、xlwingsのBook.sheets[-1]に似たコードではありますが、「.sheets」の直後に()が必須です。
  sh = bk.sheets()[-1]

最終更新日時:2019-07-15 17:03

[スポンサードリンク]

Home » Python » xlrdの使い方 » xlrdで最後・右端のシートを取得する

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

検索


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

.