Remplacement du texte dans une macro (Microsoft Word)
Si vous écrivez des macros, vous travaillez probablement beaucoup avec des variables chaîne. Une opération courante liée aux variables de chaîne est la nécessité de remplacer une occurrence de caractères dans une chaîne par une autre occurrence. Par exemple, considérez la chaîne suivante:
"This is my string of characters."
Vous voudrez peut-être remplacer « de » par un autre mot, tel que « qui a ».
La fonction générale suivante peut faire exactement cela, et bien plus encore:
Function RepText(sIn As String, sFind As String, sRep As String) As String Dim x As Integer x = InStr(sIn, sFind) While x > 0 sIn = Left(sIn, x - 1) & sRep & Mid(sIn, x + Len(sFind)) x = InStr(sIn, sFind) Wend RepText = sIn End Function
Comme exemple d’utilisation de la fonction, vous pouvez effectuer les opérations suivantes:
sTemp = "This is my string of characters." sTemp = RepText(sTemp, "of", "that has")
Lorsque ce code est exécuté, sTemp contiendra la chaîne « Ceci est ma chaîne qui a des caractères. »
Dans mes routines, j’utilise souvent une fonction comme RepText pour supprimer les espaces supplémentaires (en remplaçant une chaîne à deux espaces par une chaîne à un espace)
ou en remplaçant plusieurs espaces par un caractère de tabulation. La façon dont vous l’utilisez, bien sûr, dépend entièrement de vous.
Ceux qui n’ont utilisé que les dernières versions de VBA peuvent être curieux de savoir pourquoi j’utiliserais une fonction telle que RepText plutôt que la fonction de remplacement intégrée. Alors que la fonction Replace fait essentiellement la même chose que RepText, son ajout à l’arsenal VBA est un événement relativement nouveau. Si vos macros ont la moindre possibilité d’être utilisées dans les anciennes versions de Word, l’utilisation de Remplacer risque de planter votre macro, elle ne sera pas disponible dans ces versions.
_Note: _
Si vous souhaitez savoir comment utiliser les macros décrites sur cette page (ou sur toute autre page des sites WordTips), j’ai préparé une page spéciale qui comprend des informations utiles.
lien: / wordribbon-WordTipsMacros [Cliquez ici pour ouvrir cette page spéciale dans un nouvel onglet de navigateur]
.
WordTips est votre source pour une formation Microsoft Word rentable.
(Microsoft Word est le logiciel de traitement de texte le plus populaire au monde.) Cette astuce (811) s’applique à Microsoft Word 97, 2000, 2002 et 2003.