Переименование закладки в Word 2010

Я часто использую закладки в Word, чтобы создавать технические документы с внутренними ссылками на цитаты и часто используемую информацию, которая должна быть последовательной во всем документе. Вы можете создать их, выбрав текст, а затем перейдите в меню Insert -> Links -> Bookmark и назначьте имя, затем Insert -> Links -> Citations и выберите закладку для вставки. Затем он вставляет текст этой закладки в другое место документа.

В качестве примера, почему я это делаю: у меня часто есть первая страница, в которой перечисляется состояние документа, и эта информация затем повторяется в нижнем колонтитуле, с помощью закладки я могу настроить ссылку на этот текст, а затем просто вставить эту ссылку в нижний колонтитул И он будет обновляться автоматически всякий раз, когда я перехожу к просмотру печати или обновляю все поля в документе. Таким образом, я могу избежать поиска и замены и просто знаю, что правильный текст будет обновлен в правильных местах.

Введите описание изображения здесь

Теперь позвольте сказать, что у меня есть закладка, которую я только что назвал, просто чтобы ее уловить:
Введите описание изображения здесь

Нельзя щелкнуть правой кнопкой мыши, чтобы переименовать закладку, и я не могу найти какое-либо свойство документа, которое позволит мне изменить его.

Я могу вставить новую закладку, выбрав тот же текст, а затем удалив старый, но затем вы получите следующее:
Введите описание изображения здесь

Затем вам нужно щелкнуть правой кнопкой мыши по полю и направить его обратно на закладку (теперь фактически переименованную).

Это невозможно полностью использовать, особенно в большом документе, где эта закладка используется несколько раз.

У меня есть Googled вокруг и видел несколько сценариев VBA в Интернете, например, в этом вопросе, но поскольку они эффективно создают новый boomark и удаляют старый, они создают ту же проблему, что и выше, и являются менее идеальными.

Есть ли более простой или эффективный способ переименования закладок в документах Word? Или я могу использовать Wrong Tool ™ для этой работы?

Есть ли более простой или эффективный способ переименования закладок в документах Word?

В Word нет функции переименования. Существует несколько вариантов устранения этого недостатка:

  1. Используйте надстройку.

  2. Используйте VBA.


Решение для надстройки

Используйте надстройку Bookmark Add

Он предлагает удобный пользовательский интерфейс для выполнения всех стандартных диалоговых окон «Закладка» и многое другое.

Инструмент «Закладка» был разработан для Word 2003. Он полностью функциональен с Word 2007/2010.

В разделе «Добавить / переименовать закладку» добавление закладок – легкий ветерок.

  • Как и в стандартном диалоговом окне, вы просто выбираете текст, введите имя в поле и нажмите «Добавить».
  • В отличие от стандартного диалогового окна, приложение «Закладка» ограничивает ввод ключа действительными символами имени закладки и предупреждает вас, если вы пытаетесь создать дублирующее имя закладки.
  • Вы также можете использовать этот раздел, чтобы переименовать существующую закладку.

    Введите описание изображения здесь

Добавление дополнения закладки закладки


Решение VBA

Нет функции переименования. Вы должны удалить старое имя и пометить диапазон с новым именем закладки. Вот пример кода VBA:

 Sub ReNameBookMark() Dim doc As Word.Document Dim rng As Word.Range Dim bmk As Word.Bookmark Dim inpBookmark, repBookmark, fieldStr As String Set doc = Word.ActiveDocument inpBookmark = InputBox("Enter bookmark name that you want to be replaced:", "BookMark Replace") repBookmark = InputBox("Enter bookmark name replace with:", "BookMark Replace") Set rng = doc.Bookmarks(inpBookmark).Range Set bmk = doc.Bookmarks(inpBookmark) bmk.Delete rng.Bookmarks.Add (repBookmark) If doc.Fields.Count >= 1 Then For i = 1 To doc.Fields.Count fieldStr = doc.Fields(i).Code.Text If Left(fieldStr, 4) = " REF" Then doc.Fields(i).Code.Text = Replace(fieldStr, inpBookmark, repBookmark, , 1, vbTextCompare) doc.Fields(i).Update End If 'MsgBox "Code = " & doc.Fields(i).Code & vbCr & "Result = " & doc.Fields(i).Result & vbCr Next i End If End Sub 

Источник Измените «имя» закладки, а не ее текст , с дополнительным циклом, который будет выполняться через поля в документе, чтобы изменить любой, который может ссылаться на переименованную закладку.

Следует соблюдать осторожность при использовании этого скрипта. Например, переименование любых закладок, которые просто называются «REF» (или их вариант с верхним или нижним регистром) , повредит ВСЕ ссылки забавными и неожиданными способами. Это подразумевается как пример и только грубое исправление.

Если вы хотите переименовать несколько закладок за один раз, посмотрите, есть ли более простой или эффективный способ переименования закладок в документах Word? Который также включает образец кода VBA.

  • Отключить сжатие изображения в word 2010
  • Microsoft Word не может сохранить
  • Нумерация основных документов / поддокументов
  • Как использовать заголовок 1 для нескольких документов верхнего уровня?
  • Как изменить содержание в Word 2010, чтобы отображать только заголовки 1-3?
  • Документ Word имеет очень странное «скрытое» формирование после преобразования из PDF в .docx
  • Как я могу создать Quick Style Set, который я создал?
  • Улучшен формат цитирования APA в Word 2007/2010?
  • Microsoft Word 2010 сбой при открытии второго документа Word, пока он еще открыт
  • Как добавить изображение в виде полностраничного фона в Word 2010
  • Уравнения Word 2010 меняют без моего одобрения
  • Давайте будем гением компьютера.