Word VBA Макросы: Исчезает закладка с текстом при вставке текста в неё.

Автор Rain, 11 апреля 2020, 01:48

Rain

При вставке текста "Текст2" в закладку, содержащую текст "Текст1", закладка исчезает, а вместо нее остается текст "Текст2".

Как вставить в закладку новый текст, чтобы закладка не удалилась?

Администратор

Готового инструмента для замены текста, находящегося внутри закладки, в Майкрософте не предусмотрели. Или предусмотрели, но сделали брак.

Поэтому нужно использовать обходное решение. В этом решении закладка удаляется при вставке в неё текста, а затем снова создаётся.

Макрос
Sub Макрос()

    Dim rng As Range
   
   
    '1. Присваиваем имя "rng" фрагменту, в котором находится закладка.
    Set rng = ActiveDocument.Bookmarks("Закладка1").Range
   
    '2. Записываем во фрагмент новый текст.
        ' При этом имя "rng" изменится и будет относиться ко фрагменту, в котором находится новый текст, а
        ' не к тому фрагменту, в котором был старый текст.
    rng.Text = "new"
   
    '3. Создание закладки вокруг вставленного текста.
    ActiveDocument.Bookmarks.Add Name:="Закладка1", Range:=rng

End Sub
[свернуть]