文档中特定单词的索引号

时间:2013-11-07 10:17:31

标签: vba ms-word word-vba

我想在文档中找到特定单词的出现。

例如,考虑一个2500字的文档,我想要找到的单词是文档中的第400个单词,结果应该是400.我发现这个结果使用循环文档单词..还有其他方法这样做没有循环,因为,如果我的单词出现在文档的最后一段中,则需要时间来查找事件。

1 个答案:

答案 0 :(得分:0)

以下是您的解决方案......但请记住以下内容:

1)结果返回立即窗口

2)我提供了两种获取单词位置的选项 - Words.Count包括所有标点符号,ComputeStatistic,这可能更适合你,将在真实单词中返回单词的真实位置集合”。

Sub PositionOfTheWord()


    Dim WordToSearch As String
        WordToSearch = "hendrerit"

    Dim FirstWordFound As Range
    Set FirstWordFound = ActiveDocument.Content
        FirstWordFound.Find.Execute (WordToSearch)

    If FirstWordFound.End <> ActiveDocument.Content.End Then
        Debug.Print "Word on position: " & ActiveDocument.Range(0, FirstWordFound.End).Words.Count
        Debug.Print "Word on position: " & ActiveDocument.Range(0, FirstWordFound.End).ComputeStatistics(wdStatisticWords)

    Else
        Debug.Print "There is not search word within ActiveDocument"
    End If

End Sub