问题描述
我想计算文档中的所有单词,同时将新行作为单词忽略。 例如,在下一个示例中运行以下代码:
For Each sentence In x.StoryRanges
For Each w In sentence.Words
i = i + 1
Next
Next
MsgBox i
示例:
这是一个测试
仍在测试
由于空行,将回显 "7" 而不是 6 个单词 (this,is,a,test,still,test)
有什么办法可以反击吗? 谢谢
解决方法
忘记遍历 Sentences
和 Words
,因为这样无法获得准确的结果。而是使用要计算单词的范围的 ComputeStatistics
方法。例如
ActiveDocument.Content.ComputeStatistics(wdStatisticWords)