3

我想在word文档中找到一个字符串并删除它之后的所有内容。

不使用Selection对象的最佳方法是什么?

4

1 回答 1

11

改为使用Range对象。直接离开 Word 2003 帮助:

如果您从 Range 对象获得 Find 对象,则在找到匹配查找条件的文本时选择不会更改,但 Range 对象会被重新定义。下面的示例在活动文档中定位单词“blue”的第一次出现。如果在文档中找到“蓝色”,则重新定义 myRange

Set myRange = ActiveDocument.Content
myRange.Find.Execute FindText:="blue", _
    Forward:=True
If myRange.Find.Found = True Then 

现在使用该对象的SetRange方法Range使范围的开头成为您搜索的字符串结尾之后的下一个字符,并使范围的结尾成为文档的结尾:

myRange.SetRange (myRange.End + 1), ActiveDocument.Content.End

(TODO:当您的字符串是文档中的最后一件事时,您需要处理这种情况)

要删除内容:

myRange.Delete
于 2009-01-31T02:39:46.123 回答