Быстрый способ собрать все ссылки из Word-файла

Иван Корнев·09.05.2026·3 мин

Чтобы получить список всех гиперссылок в документе Word, проще всего использовать встроенный поиск по полям: нажмите Alt + F9, затем Ctrl + F, введите ^d hyperlink и выделите все найденные элементы — их можно скопировать в новый файл . Для автоматизации и экспорта в текстовый формат подойдёт макрос VBA, который выведет адреса ссылок построчно.

Все методы ниже работают в Word 2010 и новее, включая подписку Microsoft 365. Макросы требуют включения редактора VBA (в настройках ленты активируйте вкладку «Разработчик»).

Метод 1: Поиск полей гиперссылок (без кода)

Этот способ идеален, если нужно быстро проверить наличие ссылок или скопировать их визуально.

  1. Откройте документ и нажмите Alt + F9 — отобразятся коды полей вместо текста ссылок .
  2. Нажмите Ctrl + F, в поле поиска введите: ^d hyperlink.
  3. В параметрах поиска отметьте «Выделить все найденные элементы».
  4. Нажмите «Найти все» — все гиперссылки подсветятся в документе.
  5. Закройте окно поиска, выделите любой подсвеченный фрагмент и нажмите Ctrl + C — скопируются только выделенные гиперссылки.
  6. Вставьте в новый документ (Ctrl + V) для просмотра или редактирования.

Если после Alt + F9 вы видите код вида { HYPERLINK "https://..." }, значит, поле раскрыто корректно. Повторное нажатие Alt + F9 вернёт обычный вид.

Метод 2: Макрос VBA — список ссылок в новом документе

Если ссылок много или нужна автоматизация, используйте макрос. Он создаст новый файл со всеми активными гиперссылками (текст + адрес).

  1. Откройте документ, нажмите Alt + F11 для входа в редактор VBA .
  2. В меню выберите InsertModule.
  3. Вставьте код:
Sub GetLinksInNewDoc()
    Dim doc As Document, newDoc As Document, hlink As Hyperlink
    Set doc = ActiveDocument
    Set newDoc = Documents.Add
    With doc
        For Each hlink In .Hyperlinks
            newDoc.Activate
            With Selection
                .InsertAfter hlink.TextToDisplay & " → " & hlink.Address
                .InsertAfter vbNewLine
            End With
        Next hlink
    End With
    Set doc = Nothing: Set newDoc = Nothing
End Sub
  1. Нажмите F5 или кнопку «Run» — новый документ откроется автоматически со списком: текст ссылки → URL.

Макрос обрабатывает только текстовые гиперссылки. Ссылки в изображениях, фигурах или колонтитулах не будут извлечены — для них требуется ручная проверка.

Метод 3: Экспорт адресов ссылок в текстовый файл

Когда нужны только URL (например, для аудита или импорта в базу), используйте этот вариант:

Sub ExportLinksToTxt()
    Dim doc As Document, hlink As Hyperlink
    Set doc = ActiveDocument
    Open doc.Path & "\extracted_links.txt" For Output As #1
    With doc
        For Each hlink In .Hyperlinks
            Print #1, hlink.Address
        Next hlink
    End With
    Close #1
    Set doc = Nothing
    MsgBox "Ссылки сохранены в: " & doc.Path & "\extracted_links.txt"
End Sub

После запуска в папке с исходным файлом появится extracted_links.txt со списком адресов, по одному на строку .

Сравнение методов

МетодЧто получает пользовательКогда использовать
Поиск полей (Alt+F9)Визуальное выделение ссылок в документеБыстрая проверка, ручное копирование 5–20 ссылок
Макрос в новый документТекст ссылки + URL в формате спискаАудит, подготовка отчёта, передача коллегам
Экспорт в TXTТолько адреса ссылок, чистый текстИмпорт в базу, проверка битых ссылок, скрипты

Частые ошибки

  • Не включена вкладка «Разработчик» — без неё не открыть редактор VBA. Включение: ФайлПараметрыНастроить ленту → отметить «Разработчик».
  • Поиск ^d hyperlink не находит ссылки — убедитесь, что ссылки созданы через «Вставка» → «Гиперссылка», а не просто как подчёркнутый текст.
  • Макрос выдаёт ошибку 91 — документ не активен или защищён от редактирования. Снимите защиту и убедитесь, что нужный файл открыт и в фокусе.
  • Ссылки в таблицах пропускаются — некоторые макросы не обрабатывают вложенные диапазоны. Используйте полную переборку по StoryRanges, если критично.

FAQ

Можно ли извлечь ссылки из защищённого документа?
Нет — если файл открыт в режиме «Только чтение» или имеет ограничение на редактирование, макросы и поиск полей не сработают. Сначала снимите защиту.

Работает ли это в Word для Mac?
Да, но сочетание для открытия VBA: Opt + Fn + F11. Поиск полей (Alt + F9) работает аналогично .

Как проверить, битые ли ссылки?
После извлечения адресов используйте онлайн-инструменты проверки ссылок или надстройки Word (например, «Проверка ссылок» в Kutools), но вручную — через браузер — надёжнее для критичных документов.

Можно ли получить не только URL, но и текст вокруг ссылки?
Стандартными средствами — нет. Для извлечения контекста потребуется доработка макроса с обращением к hlink.Range.StoryText и анализом соседних абзацев.

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