SetRange方法在pywin32中返回NoneObject

时间:2019-06-10 09:31:10

标签: python python-3.x pywin32

我正在尝试使用python将Word文档的表格单元格中的文本部分加粗。但是我不知道该怎么做。

我已经尝试过使用带有参数的范围方法,但是它返回字符串,而不是范围对象。现在,我尝试在Python中调用Range对象的SetRange方法,但它使我的Range对象成为NoneObject。

test = table.Cell(start_row + i, 3).Range.SetRange(1, 10).Bold = True

代码崩溃

AttributeError: 'NoneType' object has no attribute 'Bold'

我在做什么错了?

1 个答案:

答案 0 :(得分:1)

您没有正确使用它。选中[MS.Docs]: Range object (Word)

  • SetRange -它的方法之一,不返回任何内容(转换为 Python -返回 None
  • 粗体-其属性之一

因此,您不应链接2。将代码修改为:

range_obj = table.Cell(start_row + i, 3).Range
range_obj.SetRange(1, 10)
range_obj.Bold = True