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