Références‎ > ‎

Macro pour supprimer le gris

Sub AutoDeleteGray()

Dim length As Integer
Dim backPos As Integer

p = Selection.Paragraphs.First
Last = Selection.Paragraphs.First
dd = Selection.Range.HighlightColorIndex

Do While Selection.Characters.First.HighlightColorIndex = wdGray25
    If (Selection.MoveRight <> 1) Then Exit Do
Loop


Do While Last = p
    length = 0

    If (Selection.Characters.First.HighlightColorIndex = wdGray25) Then
        
        cursorStart = Selection.Start
        
        Do While Selection.Characters.First.HighlightColorIndex = wdGray25
            length = length + 1
            If Selection.MoveLeft(wdCharacter, 1) <> 1 Then Exit Do
            
        Loop
        
        If Selection.Characters.First.HighlightColorIndex <> wdGray25 And Selection.Characters.First.HighlightColorIndex <> wdUndefined Then
            Selection.MoveRight
            backPos = backPos - 1
            length = length - 1
        End If
        Selection.Start = cursorStart - length
        Selection.End = cursorStart + 1
        Selection.Delete
    End If
    If (Selection.MoveLeft <> 1) Then Exit Do
    Last = Selection.Paragraphs.First
    backPos = backPos + 1
Loop
 
Selection.Move Unit:=wdCharacter, Count:=backPos


End Sub

Comments