ExcelファイルをPython上で利用したい場面があります。そんなExcelファイルの読み込みと表示について実演をいたします。
・必要な環境
Pythonのライブラリとして、今回は以下を利用します。
・openpyxl
以下コマンドにてインストールしましょう。(DOS画面上で実行します)
※Winキー + R 「名前」の欄に「cmd」と入力してEnterでDOS画面になります
pip install openpyxl
以下のようなExcelファイル「test.xlsx」を準備します。

※ここからダウンロードできます
まずはシートの数とシート名を表示してみます。
book = openpyxl.load_workbook('c:\\test.xlsx')
print('シートの数を表示')
print(len(book.sheetnames))
print('シート名を表示')
for name in book.get_sheet_names():
print(name)
以下のような結果になります。
シートの数を表示
>>> print(len(book.sheetnames))
1
>>>
>>> print('シート名を表示')
シート名を表示
>>> for name in book.get_sheet_names():
... print(name)
...
テスト用
シートの数が「1」、シート名が「テスト用」と出力されました。
・セルの値を取得する
今度はセルの値「B2」を取得します。以下のようにコードを実行します。
import openpyxl
book = openpyxl.load_workbook('c:\\test.xlsx')
active_sheet = book.active
print(active_sheet.cell(column=1, row=1).value)
print(active_sheet['B2'].value)
テスト名/No
「テスト名/No」が出力されました。確かにセルB2の値ですね。
・列の値全てを取得する
次に列の値全てを取得します。以下のようにコードを実行します。
import openpyxl
book = openpyxl.load_workbook('c:\\test.xlsx')
active_sheet = book.active
for column in active_sheet.columns:
print('-------列の値---------')
for cell in column:
print(cell.value)
-------列の値---------
None
None
None
None
None
None
None
None
None
None
None
None
-------列の値---------
None
テスト名/No
test01
test02
test03
test04
test05
test06
test07
test08
test09
test10
-------列の値---------
None
1
90
45
23
43
65
90
54
65
56
32
-------列の値---------
None
2
77
54
92
78
34
65
83
・・・長いので割愛・・・
上記の通り、A列から順番に全ての列の値が表示されました。
・全ての行を取得する
次に行の値全てを取得します。以下のようにコードを実行します。
import openpyxl
book = openpyxl.load_workbook('c:\\test.xlsx')
active_sheet = book.active
for row in active_sheet.rows:
print('-------行の値--------')
for cell in row:
print(cell.value)
-------行の値--------
None
テスト名/No
1
2
3
4
5
6
7
8
9
10
-------行の値--------
None
test01
90
77
23
90
77
23
23
90
77
23
-------行の値--------
None
test02
45
54
44
45
54
44
44
45
54
44
-------行の値--------
None
test03
23
92
53
23
92
・・・長いので割愛・・・
上記の通り、1行目から順番に全ての行の値が表示されました。
あとは処理に合わせての詠み込み方など、応用していくだけです。Excelは使う頻度が高いのでここで基本的な使い方を覚えておくと便利です。