Pääsisältö

Kuinka tulostaa kirjanmerkkiluettelo Word-asiakirjassa?

Kirjailija: Siluvia Viimeksi muokattu: 2024-08-23

Oletko koskaan yrittänyt tulostaa kirjanmerkkiluetteloa Word-asiakirjaan? Tässä näytämme sinulle menetelmiä sen saavuttamiseksi.

Pura kaikki kirjanmerkit ja tulosta VBA:lla

Tulosta kaikki kirjanmerkit suoraan VBA:lla


Pura kaikki kirjanmerkit ja tulosta VBA:lla

Alla oleva VBA-koodi auttaa luetteloimaan kaikki kirjanmerkit nykyisestä asiakirjasta uuteen, ja voit tulostaa puretut kirjanmerkit manuaalisesti tarpeen mukaan. Toimi seuraavasti.

1. Avaa asiakirja, johon haluat tulostaa kirjanmerkit, paina -painiketta muut + F11 avaimet avaamaan Microsoft Visual Basic for Applications ikkunassa.

2. Vuonna Microsoft Visual Basic for Applications -ikkunassa liite > Moduulitja kopioi alla oleva koodi moduuliikkunaan.

VBA-koodi: Pura kaikki kirjanmerkit uuteen asiakirjaan

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. paina F5 avain koodin suorittamiseen.

Sitten luodaan automaattisesti uusi asiakirja, jossa on kaikki määritetyn asiakirjaluettelon kirjanmerkit.

Uusi asiakirja, jossa on kaikki määritetyn asiakirjaluettelon kirjanmerkit

4. Voit napsauttaa filee > Painaa tulostaaksesi purettujen kirjanmerkkien luettelon tarpeen mukaan.

Kutools for Word, varustettu AI:lla 🤖, tarjoaa yli 100 kätevää ominaisuutta, jotka yksinkertaistavat tehtäviäsi.

Tulosta kaikki kirjanmerkit suoraan VBA:lla

Jos haluat tulostaa suoraan kaikki nykyisen asiakirjan kirjanmerkit, toimi seuraavasti.

1. Avaa asiakirja, johon haluat tulostaa kirjanmerkit, paina -painiketta muut + F11 avaimet avaamaan Microsoft Visual Basic for Applications ikkunassa.

2. Vuonna Microsoft Visual Basic for Applications -ikkunassa liite > Moduuli, kopioi sitten alla oleva koodi Moduuli-ikkunaan.

VBA-koodi: Tulosta kaikki asiakirjan kirjanmerkit

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. paina F5 -näppäintä tulostaaksesi kirjanmerkit suoraan.

Parhaat toimiston tuottavuustyökalut

Kutools for Word - Paranna sanakokemustasi Overilla 100 Merkittäviä ominaisuuksia!

🤖 Kutools AI -ominaisuudet: AI-avustaja / Reaaliaikainen avustaja / Super Polish (säilytettävä muoto) / Super Translate (säilytä muoto) / AI editointi / AI Proofread...

📘 Asiakirjan hallinta: Jaa sivut / Yhdistä asiakirjat / Vie valikoima eri muodoissa (PDF/TXT/DOC/HTML...) / Erämuunnos PDF-muotoon...

Sisältö Editointi: Eräetsi ja korvaa useita tiedostoja / Muuta kaikkien kuvien kokoa / Transponoi taulukon rivit ja sarakkeet / Muunna taulukko tekstiksi...

🧹 Vaivaton puhdistus: Pyyhkäise pois Ylimääräiset tilat / Leikkaukset / Tekstilaatikot / Hyperlinkit / Jos haluat lisää irrotustyökaluja, siirry kohtaan poista ryhmä...

Luovat lisäosat: Aseta Tuhat erottimet / Valintaruudut / Radiopainikkeet / QR koodi / Viivakoodi / Useita kuvia / Tutustu lisää osoitteessa liite ryhmä...

🔍 Tarkkuusvalinnat: Tarkka kohta Tietyt sivut / taulukot / Muodot / Otsikko Kappaleet / Paranna navigointia lisää valita piirteet...

Tähtien parannukset: Siirry mihin tahansa sijaintiin / Lisää toistuvaa tekstiä automaattisesti / Vaihda asiakirjaikkunoiden välillä / 11 Muuntaminen Työkalut...

Kutools- ja Kutools Plus -välilehdet Word Ribbonissa
???? Haluatko kokeilla näitä ominaisuuksia? Lataa Kutools for Word nyt! 🚀
 

Parhaat toimiston tuottavuustyökalut

Kutools for Word - Yli 100 Wordin työkalua