Nettoyage du texte dans une macro (Microsoft Word)
Il y a eu de nombreuses macros que j’ai écrites dans le but exprès de « nettoyer » le texte avant d’en faire autre chose. Par exemple, l’insérer dans un nouveau document ou l’enregistrer dans un fichier texte.
Souvent, ce processus est fastidieux, impliquant l’examen de chaque caractère d’une chaîne de texte, puis la prise de décision quant à ce qu’il faut en faire si le caractère ne se trouve pas dans une plage de caractères acceptables.
VBA comprend une méthode intéressante qui peut être utilisée pour aider à nettoyer le texte. Elle est appelée, à juste titre, la méthode CleanString. Vous l’utilisez comme indiqué ici:
sCleanedUp = Application.CleanString(Selection.Text)
Cette ligne de code définit la chaîne sCleanedUp égale à un « nettoyé »
version du texte sélectionné. Que fait exactement la méthode CleanString? Il supprime les caractères non imprimables dans la plage ANSI de 1 à 29, à l’exception de 7, 9, 10 et 13. Dans le cas du caractère ANSI 7, il est supprimé à moins qu’il ne soit précédé du caractère 13, auquel cas il est remplacé par un onglet (ANSI 9). Dans le cas du caractère ANSI 10, il est remplacé par le caractère 13 à moins qu’il ne soit précédé du caractère 13, auquel cas il est supprimé. Les caractères 9 et 13 ne sont pas modifiés.
Un certain nombre d’autres caractères en dehors de la plage de 1 à 29 sont également affectés par la méthode CleanString. Le caractère ANSI 31 (le trait d’union facultatif), le caractère 172 (également un trait d’union facultatif) et le caractère 182 (le caractère de marque de paragraphe) sont tous supprimés. Le caractère ANSI 160 (l’espace insécable), le caractère 176 (un autre espace insécable) et le caractère 183 (un caractère puce) sont chacun remplacés par des espaces. Tous les autres caractères sont inchangés.
_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 (13050) s’applique à Microsoft Word 2007, 2010, 2013, 2016, 2019 et Word dans Office 365. Vous pouvez trouver une version de cette astuce pour le ancienne interface de menu de Word ici:
link: / word-Cleaning_Up_Text_in_a_Macro [Nettoyage du texte dans une macro]
.