用于MS word在文档中查找文本的VBA

用于MS word在文档中查找文本的VBA,vba,ms-word,Vba,Ms Word,如何将搜索范围限制在用户输入的有限文档范围内?这将允许您指定从第3页到第20页的范围 Sub Sample() Dim rng As Range Dim StartPage As Long, EndPage As Long StartPage = 3: EndPage = 20 Selection.GoTo What:=wdGoToPage, Which:=wdGoToAbsolute, Count:=StartPage Set rng = Sele


如何将搜索范围限制在用户输入的有限文档范围内?

这将允许您指定从第3页到第20页的范围

Sub Sample()
    Dim rng As Range
    Dim StartPage As Long, EndPage As Long

    StartPage = 3: EndPage = 20

    Selection.GoTo What:=wdGoToPage, Which:=wdGoToAbsolute, Count:=StartPage

    Set rng = Selection.Range

    Selection.GoTo What:=wdGoToPage, Which:=wdGoToAbsolute, Count:=EndPage

    rng.End = Selection.Bookmarks("\Page").Range.End

    '~~> Now you have got your range. Do the necessary action here
    With rng

    End With
End Sub

请解释一下你所说的有限范围是什么意思。而且还会有很多文档吗?我正在考虑在相同的文档中搜索页码的范围。例如;-从第3页开始,在第20页结束。我的代码运行整个word文档…我应该在哪里放置一个循环,说只从起始页和结束页搜索…我测试了它,但它没有。我刚刚又测试了一次。如果使用rng在
之后键入
Debug.Print.Text
,并且如果单步执行,则会注意到它将只打印第3页以后的数据<代码>我应该在哪里放置一个循环,说明仅从起始页和结束页进行搜索…
您必须在此处设置它
StartPage=3:EndPage=20