Comment imprimer la liste des signets dans un document Word?
Avez-vous déjà essayé d'imprimer une liste de signets dans un document Word? Ici, nous allons vous montrer les méthodes pour y parvenir.
Extraire tous les signets et imprimer avec VBA
Imprimez directement tous les signets avec VBA
Extraire tous les signets et imprimer avec VBA
Le code VBA ci-dessous vous aidera à répertorier tous les signets du document actuel vers un nouveau, et vous pouvez imprimer manuellement les signets extraits selon vos besoins. Veuillez faire comme suit.
1. Ouvrez le document dont vous allez imprimer les signets, appuyez sur le bouton autre + F11 clés pour ouvrir le Microsoft Visual Basic pour applications fenêtre.
2. dans le Microsoft Visual Basic pour applications fenêtre, cliquez sur insérer > Module, puis copiez le code ci-dessous dans la fenêtre Module.
Code VBA: extraire tous les signets dans un nouveau document
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. appuie sur le F5 clé pour exécuter le code.
Ensuite, un nouveau document est créé automatiquement avec tous les signets de la liste des documents spécifiés à l'intérieur.
4. Vous pouvez cliquer sur Déposez votre dernière attestation > Commercial pour imprimer la liste des signets extraits selon vos besoins.
Imprimez directement tous les signets avec VBA
Si vous souhaitez imprimer directement tous les signets du document actuel, procédez comme suit.
1. Ouvrez le document dont vous allez imprimer les signets, appuyez sur le bouton autre + F11 clés pour ouvrir le Microsoft Visual Basic pour applications fenêtre.
2. dans le Microsoft Visual Basic pour applications fenêtre, cliquez sur insérer > Module, puis copiez le code ci-dessous dans la fenêtre Module.
Code VBA: imprimer tous les signets d'un document
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. appuie sur le F5 pour imprimer directement les signets.
Meilleurs outils de productivité bureautique
Kutools for Word - Élevez votre expérience Word avec Over 100 Caractéristiques remarquables !
🤖 Assistant IA Kutools: Transformez votre écriture avec l'IA - Générer du contenu / Réécrire le texte / Résumer des documents / Demander des informations basé sur le document, le tout dans Word
(I.e. Maîtrise des documents: Pages divisées / Fusionner des documents / Exporter la sélection dans différents formats (PDF/TXT/DOC/HTML...) / Conversion par lots en PDF / Exporter des pages sous forme d'images / Imprimer plusieurs fichiers à la fois
✏ Édition du contenu: Rechercher et remplacer par lots sur plusieurs fichiers / Redimensionner toutes les images / Transposer les lignes et les colonnes du tableau / Convertir le tableau en texte
🧹 Nettoyage sans effort : balayer Espaces supplémentaires / Sauts de section / Tous les en-têtes / Boîtes de texte / Liens hypertextes / Pour plus d'outils de suppression, rendez-vous sur notre Supprimer le groupe
➕ Insertions créatives: Insérer Mille séparateurs / Cases à cocher / Boutons radio / code QR / Code barres / Tableau des lignes diagonales / Légende de l'équation / Légende / Légende de la table / Plusieurs images / Découvrez-en davantage dans le Insérer un groupe
🔍 Sélections de précision: Localiser pages spécifiques / les tables / formes / paragraphes de titre / Améliorez la navigation avec PLUS Sélectionnez les fonctionnalités
⭐ Améliorations des étoiles: Naviguez rapidement vers n’importe quel endroit / insertion automatique de texte répétitif / basculer de manière transparente entre les fenêtres de document / 11 outils de conversion