OpenPyXL⑪ (行単位で取り出す)

行単位で取り出す

rowsプロパティ が返すオブジェクトのタプルには、全ての行単位Cellオブジェクト が格納されています。

forループを2重 にすることで、全てのデータを 行単位 で取得することができます。

[Google Colaboratory]

1
2
3
4
5
6
7
8
9
import openpyxl, pprint

book = openpyxl.load_workbook('テスト.xlsx') # Excelブックを取得
sheet = book['Sheet1'] # Sheet1を取得

for cells_obj in tuple(sheet.rows): # 1行のレコードを取り出す
for cell_obj in cells_obj: # レコードからCellオブジェクトを取り出す
print(cell_obj.value)
print('--- 1行のレコード終わり ---') # 1行のレコードの区切りを示す

読み込むエクセルファイルは下記になります。

[テスト.xlsx]

[実行結果]

全てのデータを 行単位 で取得することができました。