Python Excelファイルの操作

openpyxl インストール

pip install openpyxl

ワークシート

サンプル

ワークブックを開く

import openpyxl

book = openpyxl.load_workbook("sample1.xlsx")

# 数式の結果がほしい場合
# book = openpyxl.load_workbook("sample1.xlsx", data_only=True)


# シート名の表示
print(book.sheetnames)

ワークシート取得

# ワークシート名で取得
sheet = book["商品"]

# 最初のワークシート
sheet = book.worksheets[0]

# ワークシート名表示
print(sheet.title)

セルの操作

sheet["セル番号"]でcellオブジェクトを取得。そのvalueプロパティで値を取得。

# A2セルの表示
val = sheet["A2"].value
print(val)

またはsheetのcell(行,列)でセルを取得。valueで値を取得。

# A2セルの表示
val = sheet.cell(2,1).value
print(val)

書き換えも可能

# A2セルの表示
sheet.cell(2,1).value = 200

# 保存
book.save("sample2.xlsx")

行の取得

# 行番号で取得(1~)
row = sheet[1]

# セルは0~
print(row[0].value)

# セルを順次処理
for c in row:
    print(c.value)

行の順次処理

# 全行(内容がある行のみ)
for row in sheet.rows:
    print(row[0].value,row[1].value)

# 2行目から
for row in sheet.iter_rows(min_row=2):
    print(row[0].value) # A列
    print(row[1].value) # B列

セルをまとめて処理

for row in sheet.rows:
    for cell in row:
        print(cell.value)