Vous avez scanné un document pour lequel vous avez récupéré le texte. Dans ce texte, il y a beaucoup de notes de fin de document. Ces notes sont donc situées en fin de document, mais aucun lien ne réunit les appels de notes et les notes. Comment faire par macro pour corriger cela ?

Important : travailler sur une copie, car une macro peut être violente si les conditions ne sont pas réunies. Tout dépend quand même du document.

Pour commencer, coupez les notes qui sont à la fin du document et collez-les dans un nouveau document que vous nommerez "notes.docx" et que vous laisserez ouvert. C'est pour éviter que Word ne confonde les appels de note et la note elle-même puisque, pour l'instant, il n'y a pas de différence.

Ensuite, copiez la macro suivante et collez-la dans le document principal qui contient le texte.
Relevez le nombre de notes, et dans la boucle de la macro, remplacez le chiffre 10 par le nombre des notes.

Lancez la macro.

 

Sub notes()
'macro écrite par m@rina

Application.ScreenUpdating = False
Dim mesnotes As Document, x As Byte
Set mesnotes = Documents("notes.docx")

For x = 1 To 10
Documents(mesnotes).Select
Selection.HomeKey Unit:=wdStory
With Selection.Find
    .Text = x
    .Font.Superscript = True
    .Forward = True
    .Execute
End With

Selection.MoveRight Unit:=wdWord, Count:=1
    lanote = Selection.EndOf(Unit:=wdParagraph, Extend:=wdExtend)
    Selection.MoveLeft Unit:=wdCharacter, Count:=1, Extend:=wdExtend
    Selection.Copy

ThisDocument.Select
Selection.HomeKey Unit:=wdStory
With Selection.Find
    .Text = x
    .Font.Superscript = True
    .Forward = True
    .Replacement.Text = ""
    .Execute Replace:=wdReplaceOne
End With
    With Selection
        With .EndnoteOptions
            .Location = wdEndOfDocument
            .NumberingRule = wdRestartContinuous
            .NumberStyle = wdNoteNumberStyleArabic
        End With
        .Endnotes.Add Range:=Selection.Range, Reference:=""
    End With
    Selection.Paste
Next
Application.ScreenUpdating = True

End Sub

NB : Cette macro part du principe que les notes ne font pas plus d'un paragraphe. Si ce n'est pas le cas, prévoyez, avant de commencer, de convertir les retours paragraphes contenues à l'intérieur d'une note en retours ligne.

NB2 : Cette macro part du principe qu'il s'agit de notes de fin. Si ce sont des notes de bas de page, c'est trop compliqué, car Word ne pourra pas déterminer s'il s'agit d'une note ou d'appel de note. Donc, le mieux sera, auparavant, de rassembler toutes les notes dans le seul document "notes.docx". On pourra ensuite, si nécessaire et via la boîte de dialogue des notes de modifier les options, en convertissant notes de bas de page en notes de fin.

Statistiques

Aujourd'hui113
Hier2573
Cette semaine8084
Total depuis 200410015193

7
visiteurs actuellement en ligne