我在 Excel 中使用宏向 Word 文档添加信息。我正在尝试将 10 行添加到现有的 Word 文档中,如下所示:
Sub AddParagraphs()
'Open Word
Dim wordApp As Word.Application
Set wordApp = CreateObject("Word.Application")
'Open
Dim doc As Word.document
Set doc = wordApp.Documents.Open("c:\temp\document.docx")
'Add 10 paragraphs
Dim idx As Integer
For idx = 1 To 10
Dim paragraph As Word.paragraph
Set paragraph = doc.Paragraphs.Add()
paragraph.Range.style = wdStyleHeading2
paragraph.Range.text = "Paragraph " & CStr(idx)
Next
doc.Save
doc.Close
wordApp.Quit
End Sub
我在 C:\temp\document.docs 有一个空的 Word 文档,但运行代码后只有一行带有文本“第 10 段”。我期待10行。
据我所知,没有参数的 Paragraphs.Add() 应该创建一个新段落。也许我错误地认为一个新段落会产生一个新行?是否有另一种方法可以在循环中添加 10 行,其中每行都可以具有特定(不相同)的样式?
最佳答案
您添加的“段落”末尾没有段落标记。
将该行更改为
paragraph.Range.Text = "Paragraph " & CStr(idx) & vbCr
那应该可以解决您的问题。
关于vba - 使用 Document.Paragraphs.Add() 创建多个 Word 段落,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50121575/