Перейти к содержимому

Как распечатать список закладок в документе Word?

Author: Siluvia Last Modified: 2025-06-05

Пробовали ли вы когда-нибудь распечатать список закладок в документе Word? Здесь мы покажем вам методы, как это сделать.

Извлечение всех закладок и печать с помощью VBA

Непосредственная печать всех закладок с помощью VBA


Извлечение всех закладок и печать с помощью VBA

Следующий код VBA поможет перечислить все закладки из текущего документа в новый, и вы сможете вручную распечатать извлеченные закладки по мере необходимости. Пожалуйста, действуйте следующим образом.

1. Откройте документ, в котором вы хотите распечатать закладки, нажмите клавиши Alt + F11, чтобы открыть окно Microsoft Visual Basic for Applications.

2. В окне Microsoft Visual Basic for Applications нажмите Вставить > Модуль, затем скопируйте приведенный ниже код в окно Модуля.

Код VBA: Извлечь все закладки в новый документ

Sub ExtractBookmarksInADoc()
'Updated by Extendoffice 20181123
    Dim xRow As Long
    Dim xTable As Table
    Dim xDoc As Document
    Dim xBookMark As Bookmark
    Dim xBookMarkDoc As Document
    Dim xParagraph As Paragraph
    Set xDoc = ActiveDocument
    If xDoc.Bookmarks.Count = 0 Then
        MsgBox "There is no bookmark in this document", vbInformation, "KuTools for Word"
        Exit Sub
    End If
    Set xBookMarkDoc = Documents.Add
    xRow = 1
    Selection.TypeText "BookMarks in " & "'" & xDoc.Name & "'"
    Set xTable = Selection.Tables.Add(Selection.Range, 1, 3)
    xTable.Borders.Enable = True
    With xTable
        .Cell(xRow, 1).Range.Text = "Name"
        .Cell(xRow, 2).Range.Text = "Texts"
        .Cell(xRow, 3).Range.Text = "Page Number"
        For Each xBookMark In xDoc.Bookmarks
            xTable.Rows.Add
            xRow = xRow + 1
            .Cell(xRow, 1).Range.Text = xBookMark.Name
            .Cell(xRow, 2).Range.Text = xBookMark.Range.Text
            .Cell(xRow, 3).Range.Text = xBookMark.Range.Information(wdActiveEndAdjustedPageNumber)
            xDoc.Hyperlinks.Add Anchor:=.Cell(xRow, 3).Range, Address:=xDoc.Name, _
              SubAddress:=xBookMark.Name, TextToDisplay:=.Cell(xRow, 3).Range.Text
        Next
    End With
    xBookMarkDoc.SaveAs xDoc.Path & "\" & "Bookmarks in " & xDoc.Name
End Sub

3. Нажмите клавишу F5 для запуска кода.

Затем автоматически создается новый документ со всеми закладками указанного документа, перечисленными внутри.

New document with all bookmarks of specified document listing inside

4. Вы можете нажать Файл > Печать, чтобы распечатать список извлеченных закладок по мере необходимости.

Kutools для Word,оснащённый ИИ 🤖, предлагает более 100 удобных функций для упрощения ваших задач.

Непосредственная печать всех закладок с помощью VBA

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

1. Откройте документ, в котором вы хотите распечатать закладки, нажмите клавиши Alt + F11, чтобы открыть окно Microsoft Visual Basic for Applications.

2. В окне Microsoft Visual Basic for Applications нажмите Вставить > Модуль, затем скопируйте приведенный ниже код в окно Модуля.

Код VBA: Распечатать все закладки в документе

Sub ExtractBookmarksInADoc()
'Updated by Extendoffice 20181123
    Dim xRow As Long
    Dim xTable As Table
    Dim xDoc As Document
    Dim xBookMark As Bookmark
    Dim xBookMarkDoc As Document
    Dim xParagraph As Paragraph
    On Error Resume Next
    Set xDoc = ActiveDocument
    If xDoc.Bookmarks.Count = 0 Then
        MsgBox "There is no bookmark in this document", vbInformation, "KuTools for Word"
        Exit Sub
    End If
    Set xBookMarkDoc = Documents.Add
    xRow = 1
    Selection.TypeText "BookMarks in " & "'" & xDoc.Name & "'"
    Set xTable = Selection.Tables.Add(Selection.Range, 1, 3)
    xTable.Borders.Enable = True
    With xTable
        .Cell(xRow, 1).Range.Text = "Name"
        .Cell(xRow, 2).Range.Text = "Texts"
        .Cell(xRow, 3).Range.Text = "Page Number"
        For Each xBookMark In xDoc.Bookmarks
            xTable.Rows.Add
            xRow = xRow + 1
            .Cell(xRow, 1).Range.Text = xBookMark.Name
            .Cell(xRow, 2).Range.Text = xBookMark.Range.Text
            .Cell(xRow, 3).Range.Text = xBookMark.Range.Information(wdActiveEndAdjustedPageNumber)
            xDoc.Hyperlinks.Add Anchor:=.Cell(xRow, 3).Range, Address:=xDoc.Name, _
              SubAddress:=xBookMark.Name, TextToDisplay:=.Cell(xRow, 3).Range.Text
        Next
    End With
    xBookMarkDoc.SaveAs xDoc.Path & "\" & "Bookmarks in " & xDoc.Name
    xBookMarkDoc.PrintOut
    xBookMarkDoc.Close
    Kill xBookMarkDoc.Path
End Sub

3. Нажмите клавишу F5 для прямой печати закладок.

Лучшие инструменты для повышения продуктивности в офисе

Kutools для Word — расширьте возможности работы с Word с помощью более чем 100 уникальных функций!

🤖 Функции искусственного интеллекта Kutools: AI Ассистент / Ассистент в Реальном Времени / Супер Полировка (с сохранением формата) / Супер Перевод (с сохранением формата) / Искусственный интеллект для редактирования / Проверка с помощью ИИ...

📘 Мастерство работы с документами: Разделить страницы / Объединить документы / Экспортировать выделенное в различные форматы (PDF/TXT/DOC/HTML...) / Пакетно преобразовать в PDF...

Редактирование содержимого: Пакетный поиск и замена в нескольких файлах / Изменить размер всех изображений / Транспонировать строки и столбцы таблицы / Преобразовать таблицу в текст...

🧹 Легкая очистка: Удалите лишние пробелы / Разрывы разделов / Текстовые поля / Гиперссылки / Для дополнительных инструментов удаления перейдите в группу Удалить...

Креативные вставки: Вставить разделители тысяч / Флажки / Переключатели / QR-код / Штрихкод / Несколько изображений / Откройте больше возможностей в группе Вставить...

🔍 Точные выделения: Быстро находите нужные страницы / Таблицы / Фигуры / Абзацы заголовка / Улучшайте навигацию с помощью дополнительных функций Выбрать...

Особые улучшения: Переходите к любому расположению / Автоматически вставляйте повторяющийся текст / Переключайтесь между окнами документа /11 инструментов для преобразования...

Kutools and Kutools Plus tabs on the Word Ribbon
👉 Хотите опробовать эти функции? Скачайте Kutools для Word прямо сейчас! 🚀