Python-Excel¶
PythonからExcelを扱うライブラリがいくつかあります。
ライブラリと用途¶
ライブラリ名 | .xls操作 | .xlsx操作 | その他 |
---|---|---|---|
openpyxl | N/A | OK | 図形等の操作は対象外 |
xlrd | OK | OK | |
xlwt | OK | ? | |
pandas | OK | OK | データ分析 |
xlwings | - | - | Windows上でExcelを起動してプロセス間通信でExcelを操作(マクロ実行可) |
- openpyxl
https://openpyxl.readthedocs.io/
OpenPyXl¶
Introduction¶
インストールは、pip install openpyxl
既存のExcelファイルの読み込み¶
import openpyxl
wb = openpyxl.load_workbook('hello.xlsx')
シートの取得¶
シート名の一覧を取得¶
sheet_names = wb.sheetnames
シートの列挙¶
for sheet in wb:
print(sheet.title)
セル(データ)の取得¶
データの存在する範囲を取得¶
min_row = sheet.min_row
max_row = sheet.max_row
min_column = sheet.min_column
max_column = sheet.max_column
セルの指定(ダイレクト)¶
直接セルを指定する方法には、主に次の2つがあります。
sheet["A1"]
のようにExcelで使用する列名(アルファベット)と行番号の組み合わせ文字列で指定sheet.cell(row=1, column=1)
のように行と列のインデックスで指定
セルの指定(範囲)¶
複数のセルを範囲指定する方法
sheet["A1":"C3"]
sheet["C"]
C列全てsheet["2"]
2行目全て
セルの値¶
cell.value