Vous avez récupéré un document dans lequel un utilisateur a mis ses commentaires, mais... pas sous forme de « commentaires » !
Si l'utilisateur a formaté d'une manière particulière ses commentaires, en particulier s'il a utilisé un style, cela est possible via une macro.
Voici donc deux macros d'exemple. La première convertit tous les paragraphes qui ont été formatés avec le style "Note" en commentaires. La seconde convertit les phrases de couleur rouge qui peuvent donc être incluses dans des paragraphes.
Convertit les paragraphes de style Note
(Changez le nom de votre style dans la macro) :
Sub conversion_comment()
>'macro écrite par m@rina
Dim commentaire As String
Dim parag As Range
Dim nb_comment As Integer, i As Integer
nb_comment = ActiveDocument.Paragraphs.Count
For i = nb_comment To 1 Step -1
'mettre le nom du style utilisé à la place de "Note"
If ActiveDocument.Paragraphs(i).Style = ActiveDocument.Styles("Note") Then
Set parag = ActiveDocument.Paragraphs(i).Range
commentaire = Left(parag.Text, Len(parag.Text) - 1)
parag.Collapse (wdCollapseStart)
parag.Move unit:=wdCharacter, Count:=-1
ActiveDocument.Paragraphs(i).Range.Delete
ActiveDocument.Comments.Add Range:=parag, Text:=commentaire
End If
Next i
End Sub
Convertit les phrases de couleur rouge
(changez la condition dans la macro) :
Sub conversion_comment2()
'macro écrite par m@rina
Dim phrase As Object
Dim commentaire As String
For Each phrase In ActiveDocument.Sentences
'changez la couleur ou
'indiquez la graisse par exemple, ou l'italique
'If phrase.Font.Bold = True
'If phrase.Font.Italic = True
If phrase.Font.Color = vbRed Then
commentaire = phrase.Text
phrase.Select
Selection.Collapse Direction:=wdCollapseStart
Selection.Move unit:=wdCharacter, Count:=-1
ActiveDocument.Comments.Add Range:=Selection.Range, Text:=commentaire
If phrase.Characters.Last = Chr(13) Then
Selection.InsertParagraphBefore
End If
phrase.Delete
End If
Next