时间:2021-05-22
问题
我试图打印some_cell.font.color.rgb并得到各种结果。
对于一些人,我得到了我想要的东西(比如“ FF000000”),但对于其他人,它给了我Value must be type 'basetring'。我假设后者是因为我实际上没有为这些单元格定义字体颜色。
我正在使用openpyxl 2.2.2
解决方案
我认为这是openpyxl中的一个错误,我认为你应该在这里报告。
调试以下代码(当然使用trepan3k):
from openpyxl import Workbookwb = Workbook()ws = wb.activec = ws['A4'] # cell gets created hereprint(ws['A4'].font.color)我明白了:
Color(rgb=Value must be type 'str', indexed=Value must be type 'int', auto=Value must be type 'bool', theme=1, tint=0.0, type='theme')这来自文件中类Typed()的_repr_()openpyxl/descriptors/base.py。未初始化值时会给出此消息。请注意,“indexed”和“auto”也未设置。
但是这些应该ws['a4']是在执行访问代码时设置的。
注意:消息中的细微差别:'str'而不是'basestring'可能归因于我使用Python 3或不太可能使用openpyxl 2.2.3
如果我应该在我的示例中添加其他一些额外的代码,那么至少https://openpyxl.readthedocs.org/en/latest/index.html应该表明这一点。
另请参见openpyxl单元格样式未正确报告其中一个开发人员似乎在这么多单词中说同样的事情。
编辑:
其他一些事情可能值得关注。首先,您可以设置一个值然后读取它,例如您可以这样做:
c.font.color.rgb = "FF000000"其次,如果您c.font.color.rgb在布尔值中测试,它将看起来像已设置的值。那是
if c.font.color: print("yes")将打印“是”。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
标记的属性用于设定表格中某一单元格的属性。表格的标记属性属性描述ALIGN单元格内容的水平对齐VALIGN单元格内容的垂直对齐BGCOLOR单元格的背景颜色BA
在Excel表格中,设置单元格字体样式时,可以对单元格内的所有字符应用同一样式,即获取指定单元,应用样式即可;另外也可以对单元格内的不同字符内容应用不同字体样式
Ext修改GridPanel数据和字体颜色等,不是单指EditGridPanel首先获取选中的行(当然也可以获取单元格):复制代码代码如下:varselecte
复制代码代码如下:单元格A单元格A单元格A单元格A单元格合并行A单元格B单元格B单元格B单元格B单元格合并行B//指定页面区域内容导入Excelfunction
功能:单击单元格选中,选中过程中使用方向键更换选中的单元格,选中过程中按回车键或者直接双击单元格进入可编辑状态,单元格失去焦点时保存修改的内容。主要实现思路:选