如何通过使用openpyxl读取xlsx颜色信息
我正在使用openpyxl来读取excel文件。
对于我的应用程序,我需要读取xlsx文件中单元格的背景颜色但是我找不到如何加载这些颜色信息。
我试图使用cell.style.fill.color.index,但它只返回FFFFFFFF作为背景,这是不正确的,我读的文件。
openpyxl是否支持阅读颜色格式?
更新(2014年):
我更新了2.2版本的openpyxl 。 他们似乎已经解决了我在原始答案中logging的问题(见下文)。 通过Excel手动设置后,我现在可以成功检索背景颜色。 但是,语法略有改变:
somecell.fill.start_color.index
原始回应(2012):
我尝试了这一点,并注意到,如果我通过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'
所以,结果似乎是opeffxl风格依然不可靠。 在这个问题下看到我的评论,链接到来自openpyxl作者的评论。