うめこの開発日記

PCゲームや人工知能関連の話題についての日記

Pythonでエクセルファイルの特定の背景色のセルを取得する方法

openpyxlを利用して,特定の背景色のセルを取得することができます. ファイルの拡張子は.xlsx限定です.

import openpyxl

# xlsxファイルの読み込み
filename = 'test.xlsx'
wb = openpyxl.load_workbook(filename)

# シートは1枚を仮定し,最初のシートの取得
sheet = book[book.sheetnames[0]]

# 2番目の列に対して,背景色が無いセルの値を取得していく
# 背景色が無い場合,bgcolorは'00000000'になる(特定の色を取りたい時はここを変える)
mylist = []
for i in range(2,1002):
    cell = sheet.cell(row=i, column=2)
    bgcolor = cell.fill.bgColor.value
    if bgcolor=='00000000':
        mylist.append(cell.value)