IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Word Discussion :

2 champs liés entre eux


Sujet :

Word

  1. #1
    Candidat au Club
    Inscrit en
    Février 2009
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Février 2009
    Messages : 9
    Points : 2
    Points
    2
    Par défaut 2 champs liés entre eux
    Bonjour à tous,
    Mon premier post sur ce forum, merci de votre indulgence.
    Voici donc ma question :
    Sous word 2003, je souhaite avoir 2 champs liés entre eux. Le premier serait une liste déroulante contenant par exemple une liste de références de produits (10 en tout et pour tout), et, le deuxième, une zone de texte qui affiche automatiquement la désignation du produit lorsque sa référence est sélectionnée dans la première liste.
    Existe t'il une solution ... pas trop complexe pour réaliser celà.
    Mercie d'avance.
    Ximun.

  2. #2
    Rédacteur/Modérateur

    Avatar de Heureux-oli
    Homme Profil pro
    Contrôleur d'industrie
    Inscrit en
    Février 2006
    Messages
    21 087
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : Belgique

    Informations professionnelles :
    Activité : Contrôleur d'industrie
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 21 087
    Points : 42 926
    Points
    42 926
    Par défaut
    Bonjour et bienvenue sur les forums Office de DVP.

    En fait, il en existe au moins deux.

    La première, utiliser un Champ Ref
    http://heureuxoli.developpez.com/off...hamps/#LIV-D-8

    Ou avec un peu de code envoyer le résultat dans un contrôle texte.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Sub MiseAjour()
    ActiveDocument.FormFields("Text1").Result = ActiveDocument.FormFields("DropDown1").Result
     
    End Sub
    J'ai pas encore de décodeur, alors, postez en clair ! Comment mettre une balise de code ?
    Débutez en VBA

    Mes articles


    Dans un MP, vous pouvez me dire que je suis beau, ... mais si c'est une question technique je ne la lis pas ! Vous êtes prévenus !

  3. #3
    Candidat au Club
    Inscrit en
    Février 2009
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Février 2009
    Messages : 9
    Points : 2
    Points
    2
    Par défaut
    Merci pour votre réponse, mais, ou dois-je mettre ce bout de code?

  4. #4
    Rédacteur/Modérateur

    Avatar de Heureux-oli
    Homme Profil pro
    Contrôleur d'industrie
    Inscrit en
    Février 2006
    Messages
    21 087
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : Belgique

    Informations professionnelles :
    Activité : Contrôleur d'industrie
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 21 087
    Points : 42 926
    Points
    42 926
    Par défaut
    Salut,

    Pour le code, jette un oeil à ce tuto
    http://heureuxoli.developpez.com/off...ll/?page=page3

    Et lorsque ta liste est faite, tu choisis la procédure dans liste déroulant sur sotie de ton contrôle.
    J'ai pas encore de décodeur, alors, postez en clair ! Comment mettre une balise de code ?
    Débutez en VBA

    Mes articles


    Dans un MP, vous pouvez me dire que je suis beau, ... mais si c'est une question technique je ne la lis pas ! Vous êtes prévenus !

  5. #5
    Candidat au Club
    Inscrit en
    Février 2009
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Février 2009
    Messages : 9
    Points : 2
    Points
    2
    Par défaut
    Petite précision qui a son importance : je n'ai jamais fait de VBA ...
    Je vais donc encore abuser de votre temps en posant des questions au raz des nénuphars (...plus bas qu'une pâquerette .. qqs millimètre au dessus de du niveau de l'eau..)
    Revenons-en à nos brebis.
    J'ai fait un liste déroulante avec mes références appelée, liste1, et contenant réf1, réf2, ...
    J'ai fait un champ texte avec un nom très original : texte1
    J'ai créé une macro calcul, avec le code ci-dessus, en ayant pris soin de corriger le nom des champs.
    Je suis en suite revenu sur les propriétés de ma liste déroulante, et ai ajouté la macro en exécution à la sortie.
    A ce stade, je me doutais bien que je n'allais pas avoir la désignation de mon produit apparaitre miraculeusement dans ma zone de texte. Il faudra bien que je saisisse quelque part un sorte de table de correspondance entre référence produit et désignation ... Mais j'espérais au moins voir cette même référence dans la zone de texte ... et bien même pas.
    voilà ou j'en suis ...

  6. #6
    Rédacteur/Modérateur

    Avatar de Heureux-oli
    Homme Profil pro
    Contrôleur d'industrie
    Inscrit en
    Février 2006
    Messages
    21 087
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : Belgique

    Informations professionnelles :
    Activité : Contrôleur d'industrie
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 21 087
    Points : 42 926
    Points
    42 926
    Par défaut
    Salut,

    Tu n'avais pas dit que ta liste était vide.
    Si tu dois peupler ta liste, deux choix, tu tapes la liste à la main, ou alors tu crées une macro pour remplir la liste à l'ouverture du document.

    Petite restriction, le nombre d'éléments d'une liste est limité à 25, si tu as plus d'entrées, il faut passer par un UserForm.
    J'ai pas encore de décodeur, alors, postez en clair ! Comment mettre une balise de code ?
    Débutez en VBA

    Mes articles


    Dans un MP, vous pouvez me dire que je suis beau, ... mais si c'est une question technique je ne la lis pas ! Vous êtes prévenus !

  7. #7
    Candidat au Club
    Inscrit en
    Février 2009
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Février 2009
    Messages : 9
    Points : 2
    Points
    2
    Par défaut
    Je n'ai pas du être clair dans ma demande.
    Je reformule donc :
    J'ai une liste déroulante dans laquelle il y a une liste de référence produit (10 en tout, et pas besoin d'interface de saisie, ils seront rentrés une fois pour toute).
    ... et forcément, dans un coin du document (non visible), une correspondance entre la référence du produit, et sa désignation.
    Puis j'ai un champ qui affiche automatiquement la désignation du produit lorsque sa référence est sélectionnée dans la liste déroulante.
    Exemple :
    si je sélectionne la référence RèfProduit1 dans la liste, automatiquement la désignationDésignationProduit1 apparait dans le deuxième champ.
    Est-ce plus clair?
    merci encore pour votre aide.

  8. #8
    Rédacteur/Modérateur

    Avatar de Heureux-oli
    Homme Profil pro
    Contrôleur d'industrie
    Inscrit en
    Février 2006
    Messages
    21 087
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : Belgique

    Informations professionnelles :
    Activité : Contrôleur d'industrie
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 21 087
    Points : 42 926
    Points
    42 926
    Par défaut
    Oui, c'est un peu plus clair.
    Quoi que ?
    forcément, dans un coin du document (non visible),
    Quel est l'intérêt d'avoir une donnée non visible, si c'est pour la correspondance, il est plus facile de tout faire en une fois avec une macro, sans charger des données invisibles.
    J'ai pas encore de décodeur, alors, postez en clair ! Comment mettre une balise de code ?
    Débutez en VBA

    Mes articles


    Dans un MP, vous pouvez me dire que je suis beau, ... mais si c'est une question technique je ne la lis pas ! Vous êtes prévenus !

  9. #9
    Candidat au Club
    Inscrit en
    Février 2009
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Février 2009
    Messages : 9
    Points : 2
    Points
    2
    Par défaut
    bon,
    imaginez par exemple un devis.
    à un endroit, je choisi ma référence produit dans une liste, et, popopop grace à la magie de word, juste à côté apparait automatiquement la désignation de mon produit.
    voilà ce que je veux faire.

  10. #10
    Candidat au Club
    Inscrit en
    Février 2009
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Février 2009
    Messages : 9
    Points : 2
    Points
    2
    Par défaut
    Alors?? Pas de piste ou un début d'idée à me proposer??
    A bientôt j'espère.

  11. #11
    Rédacteur/Modérateur

    Avatar de Heureux-oli
    Homme Profil pro
    Contrôleur d'industrie
    Inscrit en
    Février 2006
    Messages
    21 087
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : Belgique

    Informations professionnelles :
    Activité : Contrôleur d'industrie
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 21 087
    Points : 42 926
    Points
    42 926
    Par défaut
    Salut,

    Un petit exemple
    Fichiers attachés Fichiers attachés
    J'ai pas encore de décodeur, alors, postez en clair ! Comment mettre une balise de code ?
    Débutez en VBA

    Mes articles


    Dans un MP, vous pouvez me dire que je suis beau, ... mais si c'est une question technique je ne la lis pas ! Vous êtes prévenus !

  12. #12
    Candidat au Club
    Inscrit en
    Février 2009
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Février 2009
    Messages : 9
    Points : 2
    Points
    2
    Par défaut
    Bonjour et merci.
    .. cependant, ça ne marche. Est-ce un pb de version? Je suis en office 2003.
    a bientôt.

  13. #13
    Candidat au Club
    Inscrit en
    Février 2009
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Février 2009
    Messages : 9
    Points : 2
    Points
    2
    Par défaut
    Rebonjour,
    Il y qq chose qui m'échappe.
    En fait la macro fonctionne si je l'exécute manuellement, et que la protection du formulaire est enlevée. Mais du coup, la liste déroulante n'est pas active.
    Par contre, si j'active la protection du formulaire, alors la liste déroulante fonctionne, mais la MAJ du champs de se fait pas. De plus le menu "exécuter macro" est grisé, donc impossible de lancer la macro.
    .. je crois qu'il y a un ti truc quej'ai pas compris. ...encore un petit coupde main SVP, on y est presque!!!!
    A bientôt.

  14. #14
    Expert éminent
    Avatar de Sepia
    Homme Profil pro
    Administrateur du cursus IDE@L - Chef de Projet NCU (digital learning) - Université de Rennes
    Inscrit en
    Octobre 2007
    Messages
    3 117
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Administrateur du cursus IDE@L - Chef de Projet NCU (digital learning) - Université de Rennes
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Octobre 2007
    Messages : 3 117
    Points : 6 856
    Points
    6 856
    Par défaut
    Salut,

    Pour pouvoir utiliser une liste déroulante de type formulaire, il faut que tu sois en mode "Formulaire" (donc avoir activé la protection du formulaire). Pour la macro, tu peux utiliser l'option "Exécuter la macro" - "à la sortie" mais attention, ceci n'est actif que lorsque le widget (donc toi dans ce cas, ta liste) perd le focus, c'est-à-dire que lorsque "sort du contrôle" (d'où le nom de "Exécuter la macro" - "à la sortie") mais pas lorsque tu changes la valeur dans la liste ==> il faut cliquer ailleurs dans un endroit autorisé pour que ton point d'insertion se déplace et que la macro s'exécute alors).


    @+

  15. #15
    Candidat au Club
    Inscrit en
    Février 2009
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Février 2009
    Messages : 9
    Points : 2
    Points
    2
    Par défaut
    Merci à tous pour votre aide. J'ai compris comment ca marche!!

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [1.x] Formulaire avec select liés entre eux
    Par Linwe dans le forum Symfony
    Réponses: 2
    Dernier message: 28/10/2011, 10h21
  2. [PHP 5.0] les résultats selon 2 menus déroulants dynamiques, liés entre eux
    Par aspkiddy dans le forum Langage
    Réponses: 3
    Dernier message: 09/06/2011, 12h36
  3. [WSS3] Lookups liés entre eux
    Par Ditch dans le forum SharePoint
    Réponses: 2
    Dernier message: 07/04/2008, 20h27
  4. Deux menus déroulants liés entre eux
    Par coco38 dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 16/04/2007, 15h31
  5. select liés entre eux
    Par spykiller dans le forum Général JavaScript
    Réponses: 9
    Dernier message: 17/11/2005, 14h25

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo