Bonjour,
Je cherche à faire via une macro, un rechercher remplacer dans une zone de texte.
Pour visualiser le code, j'ai tenté d'enregistrer la macro mais en mode macro je ne peux pas sélectionner de zone de texte.
Pouvez vous m'aider ?
Bonjour,
Je cherche à faire via une macro, un rechercher remplacer dans une zone de texte.
Pour visualiser le code, j'ai tenté d'enregistrer la macro mais en mode macro je ne peux pas sélectionner de zone de texte.
Pouvez vous m'aider ?
Salut,
Les zones de texte sont des objets graphiques dans Word.
Si elles sont en ligne ce sont des InlineShapes, si ce sont des zones flottantes, ce sont des Shapes.
Tu dois parcourir la collection pour faire ta recherche.
Ce sont des zones flottantes.
De plus je n'ai pas besoin de connaître precisement la zone de texte concerné car je veux faire le remplacement dans toutes les zones.
En faisant un selectAll, j'arrive à sélectionner toutes les zones de texte mais en faisant un find ensuite il ne me remplace pas mes champs (ça marche sur le corps)
Je suis très peu expérimenté VBA car j'utilise un pilotage de Word depuis Windev mais la syntaxe est la même (à quelques exceptions prés)
Salut,
Tu dois faire une boucle sur tous les objets shapes de ton document.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 Dim oSH as Shape For Each oSH in Activedocument.shapes oSH.Select Selection.Find ... Next oSH
Oui ça marche (en windev en plus).
Le SelectAll ne permet pas de faire le remplacement mais en sélectionnant un à un c'est bon.
Merci de l'aide.
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager