我一直在使用openpyxl从excel中读取单元格颜色作为十六进制来解决问题。我一直在四处寻找,最终我认为没有直接的方法可以使用openpyxl从excel中读取任何颜色到python中。以下是我的表现:
from openpyxl import load_workbook
wb = load_workbook('test.xlsx',data_only=True)
sh = wb['Sheet1']
cell = 'A2'
rgb = sh[cell].fill.start_color.rgb
当我使用某些颜色时,这有时会发出rgb ,而且经常会出现错误的颜色。我猜测这是基于内置颜色索引(seen here)的rgb颜色。有什么方法可以从一个单元格获得基本上任何颜色的rgb而不仅仅是少数?
谢谢, 凯文
更新 当我将单元格设置为来自"填充颜色的任何填充颜色时,我得到的输出结果为" excel上字体选项卡上的按钮(在这种情况下,它是灰色 - 25%,背景2):
"值必须是类型(类型' basestring')"。
我最终意识到,当我使用excel上的样式选项卡更改单元格的颜色时它确实有效(即"坏","好",&# 34;中性"样式)为单元格着色,但这并不方便,因为它不能在excel中获得尽可能多的特定颜色。