Openpyxl - 检查单元格是否已填充

Openpyxl - checking if cell has fill

我正在尝试检查单元格是否以黄色突出显示。我遇到的所有帖子都是填充一个单元格,而不是检查它是否有填充。到目前为止,这是我的代码:

coordinates = []

fl = PatternFill(patternType = "solid", fgColor="FFFFFF00", bgColor="FFFFFF00") 
print (fl)

for d in ws['A']:

    if str(d.value)[0:10] == str(last_day_of_month) and d.fill == fl:  
        coordinates.append(d.coordinate)
    elif str(d.value)[0:10] == str(previous_month) and d.fill == fl:
        coordinates.append(d.coordinate)
        break

我不需要检查单元格的颜色是否正确,我只需要知道它是否突出显示,所以任何确定单元格是否有填充的方法都很好。

试试这个:

if (d.font.color):
    #it's highlighted

或者还有一个选择:

d.fill.start_color.index

希望对您有所帮助。