Home » Python » OpenPyXL » OpenPyXLのmax_row・max_columnは何を返すのか

OpenPyXLのmax_row・max_columnは何を返すのか

動作検証バージョン:Windows 10 + Python 3.7.3 + OpenPyXL 2.6.2

Excelファイルを操作するOpenPyXLについて書かれたPython入門書に、worksheet.max_rowでデータの存在する最大行番号を、worksheet.max_columnで最大列番号を取得できる、といったことがさらっと書かれていることが少なくありません。

[スポンサードリンク]

max_row・max_columnを確認するサンプル

これらmax_row・max_columnで返される行番号・列番号が何なのか気になったので、以下のようなコードで確認しました。


import openpyxl
wb = openpyxl.load_workbook('C:\\temp\\foo.xlsx')
ws = wb.worksheets[0]
print(ws.max_row)
print(ws.max_column)

データが存在せず書式設定されているだけのセルが存在する場合

私が気になっていたのは、以下のようなワークシートの場合に、何を返すのかです。

データが入力されているのはC6セルまでですが、G10セルに(なぜか)書式が設定されています。

このようなワークシートで、max_rowは6行目の6と10行目の10のどちらを返すのか、max_columnはC列を意味する3とG列を意味する7のどちらを返すのか、私は気になりました。

結果は下図のとおりmax_rowは10、max_columnは7を返します。

OpenPyXLでもExcel VBAと同じように、データの存在しない書式設定されているG10セルを最終セルと見なすということです。

最終更新日時:2019-07-10 09:47

[スポンサードリンク]

Home » Python » OpenPyXL » OpenPyXLのmax_row・max_columnは何を返すのか

TrackBack:0

TrackBack URL

Home » Python » OpenPyXL » OpenPyXLのmax_row・max_columnは何を返すのか

「OpenPyXL」の記事一覧

検索


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

.