Skip to main content

如何在Word文檔中打印書籤列表?

Author: Siluvia Last Modified: 2025-08-06

您是否曾經嘗試過在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 for 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 FeaturesAI Assistant / 即時助手 / 超級潤色(保留格式) / 超級翻譯(保留格式) / AI遮擋 / AI校正...

📘 文檔掌控文檔拆分頁面 / 文檔合併 / 選取內容多格式導出(PDF/TXT/DOC/HTML...)/ 批量轉換為 PDF...

內容編輯跨多個文件批量查找與替換 / 圖片大小統一調整 / 行列翻轉表格 / 表格轉文本...

🧹 潔淨無憂:一鍵清除多餘空格 / 分節符 /文字方塊 / 超鏈接 / 更多清除工具請至 清除所有 群組...

創新插入:插入千位分隔符 / 複選框 / 選項按鈕 / 二維碼 / 條形碼 / 批量插入圖片 / 更多插入功能請前往 插入 群組...

🔍 精準選取:鎖定特定頁面 / 表格 / 形狀 / 標題段落 / 使用更多 選取 功能提升導航效率...

優質強化輕鬆跳轉至文件夾 / 自動插入重複文字 / 切換文檔窗口 /11 轉換工具...

🌍 支援40+ 種語言:可用您的偏好語言體驗 Kutools —— 支援英語、西班牙語、德語、法語、中文等超過40 種語言!

Kutools and Kutools Plus tabs on the Word Ribbon
👉 想要體驗這些功能嗎?立即下載 Kutools for Word!🚀
 

最佳辦公效率工具

Kutools for Word - 100+ Word 工具