Macro Word - Supprimer les commentaires commencant par " I "

Bonjour

Je souhaite créer une macro qui supprime tous les commentaires commençants pas « I » (code pour que la macro sache que c'est un commentaire à supprimer).

J'ai initié la macro suivante :

Sub Delete_Com_I()
Dim N As Integer

N = 0

For Each commentaire In ActiveDocument.Comments
    N = N + 1
    If Left(ActiveDocument.Comments(N).Range.Text, 5) = """ I """ Then
        commentaire.Delete
    End If

Next
End Sub

Lorsque je lance la macro, aucun commentaire n'est supprimé.

A noter, que sous WORD les guillemets dans les commentaires sont de type « I » et dans la macro c'est " I ". ca pose problème?

Merci

Salut,

Le code ci-dessous devrait faire ton affaire.

Sub Delete_Com_I()
    Dim n As Integer, Commentaire As Comment

    For Each Commentaire In ActiveSheet.Comments
        n = n + 1
        If Left(ActiveSheet.Comments(n).Text, 1) = "I" Then
            Commentaire.Delete
            n = n - 1
        End If
    Next

End Sub

Cordialement.

Merci, voici le code qui fonctionne parfaitement.

Le soucis venait de la reconnaissance de la chaine de caractère, word met :

- des espaces automatiques "I" -> " I " correspondants à des Chr(160)

- des guilements d'ouverture (Chr(171)) et de fermeture (Chr(187)) qui sont différents du ".

Sub Delete_Com_I()
    Dim n As Integer, Commentaire As comment
    Dim com As String, test As String

    For Each Commentaire In ActiveDocument.Comments
        n = n + 1
        com = Left(ActiveDocument.Comments(n).Range.Text, 5)
        'Chr(171) et Chr(187)= ", Chr(160) = espace
        If com = Chr(171) & Chr(160) & "i" & Chr(160) & Chr(187) Or com = Chr(171) & Chr(160) & "I" & Chr(160) & Chr(187) Then
            Commentaire.Delete
            n = n - 1
        End If
    Next

End Sub

Je n'avais pas remarqué que tu demandais une macro pour Word et ma macro fonctionnait parfaitement pour Excel.

Mais mes modifications Excel de ton premier code t'ont permis d'arriver à ton code actuel Word. J'aurais donc éventuellement mérité mieux qu'un ''merci'' dit du bout des lèvres suivi d'une gifle indiquant, de manière détournée, que mon code ne fonctionnait pas parfaitement !!!

Amicalement.

Un grand merci pour ton aide sans laquelle je n'y serai pas arrivé.

N'y voit aucune inimosite dans ma correction. J'aurai pu rien mettre, J'ai préféré mettre la macro qui peut éventuellement aider d'autres personnes.

Rechercher des sujets similaires à "macro word supprimer commentaires commencant"