在OpenPyXL中应用样式有问题

Uma*_*air 4 python python-3.x openpyxl

我正在尝试设置特定的行和列的样式.

worksheet.cell(row=file_row_number, column=1).value = "Hotel ID"
_cell = worksheet.cell("C1")
_cell.style.font.bold = True
Run Code Online (Sandbox Code Playgroud)

它告诉我错误

TypeError: cannot set bold attribute
Run Code Online (Sandbox Code Playgroud)

以前我在使用XLWT它并且它有非常简单的方法来应用样式,就像你定义style变量一样然后永远write()你可以只传递style变量来在该行/列上应用样式

有没有办法OpenPyXL轻松应用风格,如上所述?

Mar*_*ark 8

自从接受了答案以来,情况发生了变化.

如果您执行接受的答案建议,您将收到此警告:UserWarning:使用字体等格式化对象直接警告("直接使用格式对象,如字体")

答案仍然有效,但新解决方案是将其直接应用于单元格,例如: worksheet.cell("C1").font = Font(bold=True)

  • 如果你想遍历一系列单元格,这里有一个例子:`for works inheetheet.iter_rows('A1:L1'):for cell in row:cell.number_format ='0'cell.font = Font(bold) =真)` (2认同)