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

Kutools для Office — один пакет. Пять инструментов. Выполняйте больше.

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

Author Siluvia Last modified

Пробовали ли вы когда-нибудь распечатать список закладок в документе 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 for Word — Поднимите свой опыт работы с Word на новый уровень, используя более 100 впечатляющих функций!

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

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

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

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

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

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

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

🌍 Поддержка более40 языков: Используйте Kutools на предпочитаемом языке — поддерживаются Английский, Испанский, Немецкий, Французский, Китайский и еще более40 языков!

Kutools and Kutools Plus tabs on the Word Ribbon
👉 Хотите попробовать эти функции? Загрузите Kutools for Word сейчас! 🚀
 

✨ Kutools for Office — Одна установка, пять мощных инструментов!

Включает Office Tab Pro · Kutools for Excel · Kutools for Outlook · Kutools for Word · Kutools for PowerPoint

📦 Получите все5 инструментов в одном пакете | 🔗 Бесшовная интеграция с Microsoft Office | ⚡ Мгновенно экономьте время и повышайте продуктивность

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

Kutools for Word - 100+ инструментов для Word