Совет. Другие языки - Google-Translated. Вы можете посетить English версия этой ссылки.
Войти
x
or
x
x
Регистрация
x

or

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

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

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

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


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

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

1. Откройте документ, в котором вы будете печатать закладки, нажмите другой + F11 , чтобы открыть Microsoft Visual Basic для приложений окна.

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

Код 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 для запуска кода.

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

4. Вы можете щелкнуть филе > печать чтобы распечатать список извлеченных закладок по мере необходимости.


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

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

1. Откройте документ, в котором вы будете печатать закладки, нажмите другой + F11 , чтобы открыть Microsoft Visual Basic для приложений окна.

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

Код 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 чтобы распечатать закладки напрямую.



Рекомендуемые инструменты для повышения производительности Word

Kutools For Word - больше, чем расширенные возможности 100 для Microsoft Word, сэкономьте время 50%

  • Сложные и повторяющиеся операции могут быть выполнены одноразовой обработкой за считанные секунды.
  • Вставьте несколько изображений из папок в документ Word одновременно.
  • Объединяйте и объединяйте несколько файлов Word в разных папках в нужном вам порядке.
  • Разделите текущий документ на отдельные документы в соответствии с заголовком 1, разрывом раздела или другими критериями.
  • Конвертировать файлы между Doc и Docx, Docx и PDF, набор инструментов для общих преобразований и выбора, и так далее...
Say something here...
symbols left.
You are guest ( Sign Up? )
or post as a guest, but your post won't be published automatically.
Loading comment... The comment will be refreshed after 00:00.

Be the first to comment.