J'ai eu une grande macro pour insérer le numéro de page au début d'une note de fin MS Word here:Comment supprimer deux premiers mots d'un MS Word Note
Sub InsertPageNumberForEndnotes()
Dim endNoteCount As Integer
Dim curPageNumber As Integer
If ActiveDocument.Endnotes.Count > 0 Then
For endNoteCount = 1 To ActiveDocument.Endnotes.Count
Selection.GoTo What:=wdGoToEndnote, Which:=wdGoToAbsolute, _
Count:=endNoteCount
curPageNumber = Selection.Information(wdActiveEndPageNumber)
ActiveDocument.Endnotes(endNoteCount).Range.Select
ActiveDocument.Application.Selection.Collapse _
(WdCollapseDirection.wdCollapseStart)
ActiveDocument.Application.Selection.Paragraphs(1).Range.Characters(3)._
InsertBefore "Page " & CStr(curPageNumber) & ". "
Next
End If
End Sub
qui traite les notes de fin de
^1 Blah blah blah
^2 Blah blah blah
^3 Blah blah blah
Dans
^1 Page 2. Blah blah blah
^2 Page 23. Blah blah blah
^3 Page 119. Blah blah blah
J'ai besoin maintenant une deuxième macro pour "annuler" les modifications de rem oving the "Page nn -" afin que je puisse réexécuter la macro pour actualiser les numéros de page. Ma pensée est que je dois sélectionner les 3 premiers mots de chaque note de fin qui commence par "Page", ou peut-être sélectionner la gamme jusqu'à l'index du premier caractère "-"? Quel changement aurais-je besoin de la macro ci-dessus pour sélectionner et supprimer le texte ajouté?
au lieu de la boucle 'For' intérieure, vous pouvez saisir le texte:' = Txt de Split (Mid (Txt, n), "", 4) (3) – xidgel
@xidgel merveilleuse idée! Je l'ai incorporé dans ma réponse suggérée immédiatement. – Variatus
@Variatus, merci! Pour info, j'ai modifié un peu ma question et votre code pour refléter ce qui a fonctionné pour moi – buttonsrtoys