Excelファイルを開く
wbook = openpyxl.load_workbook('sample.xlsx')
解説
すでに存在するExcelファイルを読み込む場合は「load_workbook」でExcelファイルを指定します。ファイルが読み込まれると「Workbook」オブジェクトが返却されます。
行数・列数の取得
wbook = openpyxl.load_workbook('sample.xlsx')
wsheet = wbook.active
print('max_c -> {0} , min_c -> {1} , max_r -> {2} , min_r -> {3}'.format(
wsheet.max_column,
wsheet.min_column,
wsheet.max_row,
wsheet.min_row
))
解説
対象のシートに対して記載されている最大行・最大列を取得する場合は、Worksheetオブジェクトの「max_row」「max_column」を参照します。
行単位に読み込む
# 1行目から読み込む
for row in wsheet.iter_rows(values_only=True):
print(row)
# 2行目から読み込む(ヘッダー行をスキップ)
for row in wsheet.iter_rows(min_row=2,values_only=True):
print(row)
解説
Worksheetオブジェクトに対してiter_rowsを参照することで行単位で順次取得できます。通常取得されるのはセル情報になるため、「value_only」引数を指定することで、セル内のテキストのみ取得することができます。
また、「min_row」引数を指定することで読み込む開始行を指定することができます。
今回サンプルで作成したコード
# -*- coding:utf-8 -*-
import openpyxl
wbook = openpyxl.load_workbook('sample.xlsx')
wsheet = wbook.active
print(wsheet['A1'].value)
print('max_c -> {0} min_c -> {1} max_r -> {2} min_r -> {3}'.format(
wsheet.max_column,
wsheet.min_column,
wsheet.max_row,
wsheet.min_row
))
for row in wsheet.rows:
print(row)
for row in wsheet.iter_rows(values_only=True):
print(row)
for row in wsheet.iter_rows(min_row=2,values_only=True):
print(row)
この記事のトラックバック用URL