Zone de texte remplie selon choix d'une liste déroulante

Roro_6768 Messages postés 2 Date d'inscription   Statut Membre Dernière intervention   -  
 Roro_6768 -
Bonjour,

Cette conversation existe déjà pour excel mais je souhaiterais le faire sous word 2016.

L'idée est que j'ai une liste déroulante avec plusieurs choix et plus loin dans le texte j'ai plusieurs zones de texte que je souhaiterais remplir automatiquement en fonction de ce qui a été choisit dans la liste déroulante.

Si je choisis "choix 1" dans la liste déroulante, je veux dans toutes les zones de textes j'ai "texte 1"
Si je choisis "choix 2" dans la liste déroulante, je veux dans toutes les zones de textes j'ai "texte 2"
Etc..

Merci d'avance pour votre réponse,
Roro
A voir également:

2 réponses

m@rina Messages postés 23911 Date d'inscription   Statut Contributeur Dernière intervention   11 465
 
Bonjour,

Il faut déjà qu'on sache quel type de liste déroulante et de zone de texte tu utilises. Il y en a au moins trois sortes. Explications ici :
https://faqword.com/index.php/word/formulaires-controles/911-le-point-sur-les-outils-de-formulaires

m@rina

0
Roro
 
J'utilise contrôle du contenu de zone de liste déroulante mais je peux utiliser autre chose si besoin.
Je veux simplement éviter de passer du temps à cliquer sur chaque liste.

Roro
0
m@rina Messages postés 23911 Date d'inscription   Statut Contributeur Dernière intervention   11 465
 
Bonjour,

Supposant que le nom de balise de ton contrôle est "tag1", supposant que la zone de texte de texte se nomme "zdt1" , voici une macro qui va se déclencher à la sortie de la liste déroulante :

Private Sub Document_ContentControlOnExit(ByVal CC As ContentControl, Cancel As Boolean)
If CC.Tag = "tag1" Then
montexte = CC.Range.Text
ActiveDocument.Shapes("zdt1").TextFrame.TextRange.Text = montexte
End If
End Sub


J'explique ici :
https://faqword.com/index.php/word/formulaires-controles/902

Evidemment, si tu as plusieurs zones de texte, tu peux faire une boucle, ou nommer chaque zone. Tout dépend de ton document.

m@rina
0
Roro_6768 Messages postés 2 Date d'inscription   Statut Membre Dernière intervention  
 
Bonjour,

Après avoir nommer la balise er la zone de texte, je ne vois pas ou exécuter ma macro dans le word, je n'ai peut-être pas le bon type de liste déroulante pour lui dire d'exécuter ma macro en sortie.

Je ne sais pas non plus comment dire que dans la macro que j'ai plusieurs textes. J'ai 3 textes différents dans ma liste déroulante
(texte1 dans la liste --> texte 1 dans la zone ;
texte 2 dans la liste --> texte 2 dans la zone ;
texte3 dans la liste --> texte 3 dans la zone)
et malheureusement je ne m'y connais pas assez pour compléter le code

Encore merci pour ton aide.

Roro
0
m@rina Messages postés 23911 Date d'inscription   Statut Contributeur Dernière intervention   11 465
 
Bonsoir,

"je ne vois pas ou exécuter ma macro dans le word"
Je pense que tu n'as pas lu, ni même regardé le lien que je t'ai donné...

Concernant les 3 textes différents, la macro s'en fiche, puisqu'elle traite du résultat, c'est à dire du choix que tu as fait dans la liste.
0
Roro_6768
 
Bonjour,

J'ai lu le lien seulement mais c'est la première fois que j'utilise des macros dans word donc je suis un peu perdu.

Quand vous dites "à la sortie du contrôle de contenu", voulez vous dire que quand je fais un choix dans ma liste déroulante celui-ci devrais s'afficher dans la zone de texte automatiquement ? Car si c'est le cas, je n'ai pas réussi a faire fonctionner le code. J'ai ouvert la fenêtre Microsoft Visual Basic où j'ai copié votre code en prenant soin de changer le nom de la balise de ma liste déroulante ainsi que le signet de ma zone de texte. J'ai enregistré et là je ne sais pas ce que je suis censé faire.

Aussi peut-être que je me suis mal exprimer, le texte qui se trouve dans la liste déroulante n'est pas forcément identique au texte que je souhaite avoir dans les zones de textes.

Roro
0