Demande correction macro word

Bonjour, SVP pourquoi ma macro coince t elle ?
la ligne
For Each mot As String In lesMots
apparaît en rouge et une fenêtre m'affiche erreur de compilation
ub hdja()

Dim lesMots As Variant

lesMots = Array("handicap", "invalid", "infirm", "dys", "incap", "accessib", "accé", "accè", "autist", "para", "amnésie", "appareil", "besoin", "educ", "particulier", "comport", "discrimin", "emotion", "epiliepsie", "estime", "soi", "person", "représent", "fonction", "execut", "cognit", "audit", "vis", "situation", "communic", "langage", "corp", "perte", "moteur", "exclu", "retard", "scolaire", "inclu", "exclu", "parole", "geste", "poly", "pluri", "représent", "sensoriel", "psy", "sentiment", "trouble", "sensibili", "harcel", "potent", "viol")
For Each mot As String In lesMots
Remplacer mot
Next mot
End Sub

Sub Remplacer(LeTexte As String)
Selection.Find.ClearFormatting
Selection.Find.Replacement.ClearFormatting
Selection.Find.Replacement.Font.Color = wdColorRed
With Selection.Find
.Text = LeTexte
.Replacement.Text = LeTexte
.Forward = True
.Wrap = wdFindContinue
.Format = True
.MatchCase = False
.MatchWholeWord = False
.MatchWildcards = False
.MatchSoundsLike = False
.MatchAllWordForms = False
End With
Selection.Find.Execute Replace:=wdReplaceAll
End Sub

4 réponses

  • Votes
  • Date
  • Date décroissante
  1. J'ai ressayé en faisant 2 fois lesMots=Array(... et divisant ma quantité de mots en 2 et ça marche, mais bon comme je ne fais qu'appliquer une macro que l'un d'entre vous m'avait faite, je ne sais pas trop pourquoi. Merci quand même
    1. Bonjour,
      Juste au passage, il semble que votre macro n'est pas complète,,.. ! Alors pas possible d'en faire plus.
      1. Bonjour FVR812,
        Je vous propose de modifier deux parties de votre code:
         For Each mot As String In lesMots
        renmplacer par
         For Each mot  In lesMots


        ET
        Sub Remplacer(LeTexte As String)
        remplacer par
        Sub Remplacer(ByVal LeTexte As String)