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"
欢迎交流。