В моих документах Word у меня часто есть текст, такой как «Смотри выше, сноска 3». Я хотел бы заменить 3 фактической перекрестной ссылкой на сноску 3, чтобы она обновлялась при изменении нумерации сноски. Как сделать макрос для автоматической вставки перекрестной ссылки?

1 ответ1

1

Вы можете использовать InsertCrossReference объекта Selection :

Sub MkXref()
Selection.InsertCrossReference wdRefTypeFootnote, wdFootnoteNumber, Selection.Text, True
End Sub

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

В некоторых научных работах сноска 1 прилагается к имени автора и не нумеруется. Это устанавливает нумерацию: примечание, которое появляется как "сноска 1", на самом деле является сноской 2 по расчетам Word. Чтобы исправить это, вы можете сделать арифметику в Section.Text:

Sub MkXref()
Selection.InsertCrossReference wdRefTypeFootnote, wdFootnoteNumber, (Selection.Text + 1), True
End Sub

Обратите внимание, что здесь нет обработки ошибок.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .