如何用vba获取word文档中某个段落的前、后段落的内容?

在word vba 中 ,Paragraph对象代表word段落。

可以使用如下的代码获取任意一个段落的文本内容:

Sub QQ1722187970()
    Dim oDoc As Document
    Set oDoc = Word.ActiveDocument
    Dim oP As Paragraph
    Set oP = oDoc.Paragraphs(1)
    With oP
        MsgBox .Range.Text
    End With
End Sub

如果要获取指定段落的下一个段落的文本内容,可以使用Paragraph 对象的 Next方法,其中参数Count用正数,表示下N个段落的内容,如果Count参数用负数,表示前N个段落的内容。

Sub QQ1722187970()
    Dim oDoc As Document
    Set oDoc = Word.ActiveDocument
    Dim oP As Paragraph
    Set oP = oDoc.Paragraphs(10)
    With oP
        '下一个段落的文本内容
       MsgBox .Next(1).Range.Text
        '前一个段落的文本内容
       MsgBox .Next(-1).Range.Text
    End With
End Sub
       

发表评论