wordApp = win32com.client.Dispatch('Word.Application') doc = wordApp.Documents.Open(fileName) Selection = wordApp.Selection ActiveDocument = doc.Application.ActiveDocument Selection.Style = ActiveDocument.Styles("表编号") Selection.TypeParagraph() 修改标题格式时,只对第一个标题起作用
时间: 2024-02-28 16:53:33 浏览: 54
C#读取doc .pdf等文件
3星 · 编辑精心推荐
这可能是因为代码中只对第一个标题进行了修改。要使代码对所有标题起作用,可以使用循环,在循环中对每个标题进行相同的操作,如下所示:
```
wordApp = win32com.client.Dispatch('Word.Application')
doc = wordApp.Documents.Open(fileName)
for para in doc.Paragraphs:
if para.Style.Name == "表编号": # 如果当前段落的样式为"表编号"
para.Range.Select() # 选中该段落
wordApp.Selection.TypeParagraph() # 输入一个空行
wordApp.Selection.Style = doc.Styles("表编号") # 设置样式
doc.Close() # 关闭文档
wordApp.Quit() # 退出 Word
```
这样,代码就会对文档中所有的“表编号”样式的标题起作用,而不仅仅是第一个。
阅读全文