openpyxl   优点: 对文件进行操作, 也就是说: 如果一台电脑 没有Office excel 或 WPS excel, xlsx 是打不开的,会提示你选择程序打开。   但这时    openpyxl也可以操作excel。

缺点:    只可对xlsx类型的excel 操作, 不支持xls。 (在老电脑上 可能不友好~~~,但影响不大啦)

最近在学习openpyxl, 【设置单元格背景色】 及 【获取单元格背景色】 有一些疑惑。

openpyxl  获取单元格背景色, 如果该单元格背景色为 默认背景色,结果是:

B5:   <openpyxl.styles.fills.PatternFill object>     背景色
Parameters:
patternType=None, fgColor=<openpyxl.styles.colors.Color object>
Parameters:
rgb='00000000', indexed=None, auto=None, theme=None, tint=0.0, type='rgb', bgColor=<openpyxl.styles.colors.Color object>
Parameters:
rgb='00000000', indexed=None, auto=None, theme=None, tint=0.0, type='rgb'

  很疑惑,“00000000”查看rgb对照表是黑色~~~ 尴尬



import openpyxl
path = r"自己填写"
wb = openpyxl.load_workbook(path)
sht = None
sht = wb.get_sheet_by_name("Sheet1")
sht[cell].fill = PatternFill(fill_type='solid', fgColor=color) # color = "00000000" 格式
wb.save(path)

  

操作Office的excel时,设置 背景色为黑色 , 肉眼可以看到设置成功。 但如果用xlwings去获取单元格背景色,结果为 白色; 如果用 openpyxl获取,结果为"00000000",结果正确,但 怎么和默认背景色相区别呢?


操作WPS的excel时,设置 背景色为黑色,   直接设成了 白色``````    获取结果 和上面一样。 xlwings去获取单元格背景色,结果为 白色; 如果用 openpyxl获取,结果为"00000000"

欢迎交流。



05-27 19:41