2011-02-01 5 views
1

J'ai créé un modèle dans Word 2007 avec plusieurs champs que je souhaite que les utilisateurs puissent rapidement rechercher et modifier. J'ai indiqué ces champs comme ça: [change this].Utilisation de caractères génériques dans la macro de mots

Je veux créer une macro qui trouvera tous les mots commençant par "[" et se terminant par "]" et les mettra en surbrillance.

Ma macro trouve jusqu'à présent tous les mots commençant par "[" et les met en surbrillance. Je n'arrive pas à comprendre comment le mettre en évidence le reste du mot, y compris "]".

J'ai passé en revue les règles pour les caractères génériques ici http://www.gmayor.com/replace_using_wildcards.htm et j'ai pensé que je pourrais employer quelque chose comme ceci: < []> mais il ne trouve jamais rien.

J'apprécierais de l'aide! Merci!

Voici le code:

Sub HighlightAllItems() 
Dim myRange As Range 
Dim searchText As String 

searchText = "[" 

Set myRange = ActiveDocument.Range 
With myRange.Find 
.MatchWildcards = True 
.Text = searchText 
.ClearFormatting 
.Replacement.ClearFormatting 
.Replacement.Highlight = True 
.Replacement.Text = searchText 
.Forward = True 
.Format = True 
.Execute Replace:=wdReplaceAll 
End With 
End Sub 
+1

S'il vous plaît, diffusez le code que vous avez déjà pour trouver et mettre en évidence "[". –

Répondre

0

Essayez d'utiliser ce modèle de recherche: \[<*>\]

+0

Merci, ça m'a rapproché! Cela fonctionne dans la boîte de dialogue Rechercher/Remplacer mais pas dans la macro. Je reçois une erreur Le texte Remplacer par contient un numéro de groupe qui est hors de portée. – badD0g01

Questions connexes