Vai al contenuto principale

Come stampare un elenco di segnalibri nel documento di Word?

Hai mai provato a stampare un elenco di segnalibri in un documento di Word? Qui ti mostreremo i metodi per ottenerlo.

Estrai tutti i segnalibri e stampa con VBA

Stampa direttamente tutti i segnalibri con VBA


Estrai tutti i segnalibri e stampa con VBA

Il codice VBA sottostante ti aiuterà a elencare tutti i segnalibri dal documento corrente a uno nuovo e potrai stampare manualmente i segnalibri estratti di cui hai bisogno. Si prega di fare quanto segue.

1. Apri il documento su cui stamperai i segnalibri, premi il tasto altro + F11 chiavi per aprire il Microsoft Visual Basic, Applications Edition finestra.

2. Nel Microsoft Visual Basic, Applications Edition finestra, fare clic inserire > Moduli, quindi copia il codice sottostante nella finestra del modulo.

Codice VBA: estrai tutti i segnalibri in un nuovo documento

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. premi il F5 chiave per eseguire il codice.

Quindi viene creato automaticamente un nuovo documento con tutti i segnalibri dell'elenco di documenti specificato all'interno.

4. Puoi cliccare Compila il > Stampa per stampare l'elenco dei segnalibri estratti di cui hai bisogno.


Stampa direttamente tutti i segnalibri con VBA

Se si desidera stampare direttamente tutti i segnalibri nel documento corrente, eseguire le seguenti operazioni.

1. Apri il documento su cui stamperai i segnalibri, premi il tasto altro + F11 chiavi per aprire il Microsoft Visual Basic, Applications Edition finestra.

2. Nel Microsoft Visual Basic, Applications Edition finestra, fare clic inserire > Modulo, quindi copia il codice sottostante nella finestra del modulo.

Codice VBA: stampa tutti i segnalibri in un documento

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. premi il F5 tasto per stampare direttamente i segnalibri.

I migliori strumenti per la produttività in ufficio

Kutools for Word - Migliora la tua esperienza con le parole con Over 100 Caratteristiche notevoli!

🤖 Assistente AI di Kutools: Trasforma la tua scrittura con l'intelligenza artificiale - Genera contenuto  /  Riscrivere il testo  /  Riepilogare i documenti  /  Richiedi informazioni sulla base del documento, tutto all'interno di Word

📘 Padronanza dei documenti: Pagine divise  /  Unisci documenti  /  Esporta la selezione in vari formati (PDF/TXT/DOC/HTML...)  /  Converti in batch in PDF  /  Esporta pagine come immagini  /  Stampa più file contemporaneamente...

Modifica dei contenuti: Trova e sostituisci in batch su più file  /  Ridimensiona tutte le immagini  /  Trasporre righe e colonne della tabella  /  Converti tabella in testo...

🧹 Pulito senza sforzo: Spazza via Spazi extra  /  Interruzioni di sezione  /  Tutte le intestazioni  /  Caselle di testo  /  Collegamenti ipertestuali  / Per ulteriori strumenti di rimozione, vai al nostro Rimuovi gruppo...

Inserti creativi: Inserisci Mille separatori  /  Caselle di controllo  /  Pulsanti di scelta  /  QR Code  /  Codice a barre  /  Tabella della linea diagonale  /  Didascalia dell'equazione  /  Didascalia immagine  /  Didascalia  /  Immagini multiple  / Scopri di più nella Inserisci gruppo...

???? Selezioni di precisione: Individuare pagine specifiche  /  con tabelle  /  forme  /  paragrafi di intestazione  / Migliora la navigazione con Scopri di più Seleziona funzionalità...

Miglioramenti delle stelle: Naviga rapidamente verso qualsiasi luogo  /  inserire automaticamente testo ripetitivo  /  passare senza problemi da una finestra all'altra del documento  /  11 strumenti di conversione...

👉 Vuoi provare queste funzionalità? Kutools per Word offre a Prova gratuita 60-day, senza limitazioni! 🚀
 
Comments (0)
No ratings yet. Be the first to rate!
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations