Найдите строку в документе и удалите все после нее

StackOverflow https://stackoverflow.com/questions/497624

Вопрос

Я хочу найти строку в документе Word и удалить все после нее.

Как лучше всего это сделать без использования Selection объект?

Это было полезно?

Решение

Использовать Range вместо этого объект.Прямо из справки Word 2003:

Если вы попали в объект Find из объекта диапазона, выбор не изменяется, когда текст, соответствующий критериям находки, найден, но объект диапазона переопределяется.В следующем примере находится первое появление слова «синий» в активном документе.Если в документе найдено "синий", 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

(ДЕЛАТЬ:Вам придется иметь дело со случаем, когда ваша строка является последней вещью в документе)

Чтобы удалить содержимое:

myRange.Delete
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top