Renseigner un champs de texte suivant résultat liste déroulante
Résolu/Fermé
Eskéléa
-
1 mars 2017 à 11:19
smarties123 Messages postés 4 Date d'inscription dimanche 7 septembre 2014 Statut Membre Dernière intervention 24 octobre 2019 - 8 août 2019 à 20:13
smarties123 Messages postés 4 Date d'inscription dimanche 7 septembre 2014 Statut Membre Dernière intervention 24 octobre 2019 - 8 août 2019 à 20:13
A voir également:
- Gertrude a préparé la liste des affaires à prendre pour l'excursion. juliette a modifié cette liste en utilisant le mode suivi des modifications proposé par le traitement de texte.
- Suivi des modifications Word : comment l'utiliser - Guide
- Liste déroulante excel - Guide
- Liste déroulante en cascade - Guide
- A quoi sert le mode avion - Guide
- Appliquez à tous les paragraphes du document à télécharger, à l’exception des titres et des sous-titres, la mise en forme suivante : chaque paragraphe doit être espacé de 0,42 cm ou 12 pt du paragraphe qui suit les textes ne doivent pas être en retrait à droite et à gauche après ces modifications, sur quelle page se trouve le titre « la cheminée » dans le chapitre « informations diverses » ? - Guide
7 réponses
m@rina
Messages postés
21701
Date d'inscription
mardi 12 juin 2007
Statut
Contributeur
Dernière intervention
11 mars 2025
11 407
3 mars 2017 à 01:15
3 mars 2017 à 01:15
Supposant que le titre de ton contrôle liste déroulante soit "maliste" et que le titre du contrôle zone de texte soit "zt", voici une macro à mettre dans ThisDocument :
m@rina
Private Sub Document_ContentControlOnExit(ByVal CC As ContentControl, Cancel As Boolean)
Dim controle As ContentControl
If CC.Title = "maliste" Then
For Each controle In ActiveDocument.ContentControls
If controle.Title = "zt" Then
If CC.Range = "PROCEDURE" Then
controle.Range = "PRO"
ElseIf CC.Range = "INSTRUCTION" Then
controle.Range = "INS"
ElseIf CC.Range = "MODE OPERATOIRE" Then
controle.Range = "MOP"
End If
End If
Next
End If
End Sub
m@rina
Argitxu
Messages postés
4838
Date d'inscription
dimanche 22 juillet 2007
Statut
Contributeur
Dernière intervention
24 janvier 2025
4 783
1 mars 2017 à 13:28
1 mars 2017 à 13:28
Bonjour
Sélectionne le contrôle de contenu de la liste déroulante et crées-en un signet : Insertion | Signet | lui donner le nom LD par exemple
Ensuite poser la condition avec cette formule
CTRL+F9 pour créer les codes champ { }
{ IF { REF LD } = "PROCEDURE" "PRO"} { IF { REF LD } = "INSTRUCTION" "INS"} { IF { REF LD } = "MODE OPERATOIRE" "MOP"}
REF LD est le renvoi vers le signet que tu viens de créer
Attention, pour une mise à jour à chaque modification de la liste déroulante, CTRL A pour sélectionner et F9 pour mettre à jour et actualiser ainsi le texte
Sélectionne le contrôle de contenu de la liste déroulante et crées-en un signet : Insertion | Signet | lui donner le nom LD par exemple
Ensuite poser la condition avec cette formule
CTRL+F9 pour créer les codes champ { }
{ IF { REF LD } = "PROCEDURE" "PRO"} { IF { REF LD } = "INSTRUCTION" "INS"} { IF { REF LD } = "MODE OPERATOIRE" "MOP"}
REF LD est le renvoi vers le signet que tu viens de créer
Attention, pour une mise à jour à chaque modification de la liste déroulante, CTRL A pour sélectionner et F9 pour mettre à jour et actualiser ainsi le texte
Bonjour Argitxu,
merci pour ta réponse, mais je n'arrive pas à le faire fonctionner.
Quand je bascule les codes de champ, il me met REF et refuse de se mettre à jour.
merci pour ta réponse, mais je n'arrive pas à le faire fonctionner.
Quand je bascule les codes de champ, il me met REF et refuse de se mettre à jour.
Argitxu
Messages postés
4838
Date d'inscription
dimanche 22 juillet 2007
Statut
Contributeur
Dernière intervention
24 janvier 2025
4 783
1 mars 2017 à 19:22
1 mars 2017 à 19:22
C'est que les codes champs sont mal insérés.
Les accolades doivent être faites avec Ctrl+F9. Il y a 3 blocs de IF identiques pour chacune des 3 conditions. Fais-en un et teste.
Sinon transmets ton exemple pour que je regarde. Utilise https://www.cjoint.com/
Argitxu
Les accolades doivent être faites avec Ctrl+F9. Il y a 3 blocs de IF identiques pour chacune des 3 conditions. Fais-en un et teste.
Sinon transmets ton exemple pour que je regarde. Utilise https://www.cjoint.com/
Argitxu
m@rina
Messages postés
21701
Date d'inscription
mardi 12 juin 2007
Statut
Contributeur
Dernière intervention
11 mars 2025
11 407
3 mars 2017 à 00:10
3 mars 2017 à 00:10
Bonjour,
Il existe des événements qui se déclenche à la modification d'un contrôle de contenu.
Si tu n'as rien contre les macros, les signets sont inutiles, et de plus, comme l'a précisé Argitxu, ils ne se mettent pas à jour automatiquement.
On peut écrire une petite macro qui remplira automatiquement ta zone de texte à la sortie de la liste déroulante.
m@rina
Il existe des événements qui se déclenche à la modification d'un contrôle de contenu.
Si tu n'as rien contre les macros, les signets sont inutiles, et de plus, comme l'a précisé Argitxu, ils ne se mettent pas à jour automatiquement.
On peut écrire une petite macro qui remplira automatiquement ta zone de texte à la sortie de la liste déroulante.
m@rina
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Bonsoir !
Je n'ai rien contre les macros :) au contraire j'en utilise beaucoup sur excel mais sur word je ne sais pas les mettre en oeuvre.
Votre aide serait vraiment la bienvenue :)
Je n'ai rien contre les macros :) au contraire j'en utilise beaucoup sur excel mais sur word je ne sais pas les mettre en oeuvre.
Votre aide serait vraiment la bienvenue :)
8 août 2019 à 20:13
Je cherche à faire exactement la même chose et en suivant tes instructions ça fonctionne. Toutefois, j'ai plusieurs listes déroulantes et j'aimerais faire la même chose avec les autres. Comment dois-je faire ? Quel code je dois écrire ? J'ai copié le même code en changeant les noms de listes et de zone de texte mais j'ai des messages d'erreur. Je crois que je ne copie pas au bon endroit. Merci pour ton aide !