我正在使用openpyxl来读取excel文件。
对于我的应用程序,我需要读取xlsx文件中单元格的背景颜色 但我无法找到如何加载这些颜色信息。
我尝试使用cell.style.fill.color.index,但它只返回FFFFFFFF作为背景,这对我读取的文件不正确。
openpyxl是否支持读取颜色格式?
答案 0 :(得分:8)
我将openpyxl更新为v.2.2。他们似乎已经解决了我在原始答案中记录的问题(见下文)。我现在能够通过Excel手动设置后成功检索背景颜色。但是,语法略有改变:
somecell.fill.start_color.index
我对此进行了实验,并注意到如果我通过openpyxl设置背景颜色,如下所示:
_cell.style.fill.fill_type = Fill.FILL_SOLID
_cell.style.fill.start_color.index = Color.DARKGREEN
然后检索这样的值:
_style.fill.start_color.index
然后我得到正确答案:
'FF008000'
但是,如果我在Excel中设置背景颜色并保存文件,然后通过openpyxl访问它,那么我会做同样的事情:
'FFFFFFFF'
所以,结果似乎是opepyxl样式仍然不可靠。请查看我在评论下的评论,其中包含指向openpyxl作者评论的链接。