我想在文档中查找特定单词的出现。
例如,考虑一个包含 2500 个单词的文档,我要查找的单词是文档中的第 400 个单词,结果应该是 400。我使用循环遍历文档单词找到了这个结果.. 有没有其他方法可以做到这一点没有循环,因为如果我的词出现在文档的最后一段中,则需要时间才能找到出现的地方。
这是为您提供的解决方案......但请记住以下几点:
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