在文档中查找字符串并删除其后的所有内容

时间:2009-01-30 23:06:20

标签: vba ms-word ms-office range document

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

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

1 个答案:

答案 0 :(得分:10)

改为使用Range对象。直接取消了Word 2003的帮助:

  

如果你已经找到了Find对象   从Range对象中选择   文本匹配时不会更改   找到标准,但范围   对象被重新定义。下列   示例找到第一个匹配项   活跃的“蓝色”一词   文献。如果在中找到“蓝色”   文档,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