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 :

Mise a jour champ texte suite à une sélection d'un champ Liste déroulante


Sujet :

Word

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2008
    Messages : 13
    Points : 17
    Points
    17
    Par défaut Mise a jour champ texte suite à une sélection d'un champ Liste déroulante
    Bonjour à vous!


    comme indiqué dans l'intitulé, je souhaiterais, par le biais d'une sélection dans un champ liste déroulante, afficher un texte ou l'autre.

    exemple:

    on sélectionne "Pierre DUPONT" dans la liste déroulante, le texte "Directeur Financier" s'affiche dans le champ texte, si on sélectionne Marie DURAND, se sera Directrice RH qui s'affichera dans la zone de texte!

    Grâce aux différentes discutions que j'ai pu lire et aux conseils d'Heureux-Oli, j'ai pu faire le code suivant, qui me permet bien d'adapter la zone de texte, mais je rencontre deux soucis:

    1° -> je suis obligé de cliquer sur la zone de texte pour faire la mise a jour, or je voudrais que celle-ci se fasse au moment du choix dans le champ liste déroulante;

    2° -> comment fait-on pour afficher un texte sur plusieurs lignes dans une macro?


    Voici le code:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    Sub ListeFONCTIONS()
    Dim stNOM As String
    'récupération du pays
    stNOM = ActiveDocument.FormFields(1).Result
     
    Select Case stNOM
    Case "Pierre DUPONT"
        With ActiveDocument.FormFields("Texte1")
            .Result = "Directeur Financier" 'je voudrais rajouter une ligne sous celle de directeur financier (par exemple 'Département des Ventes')
     
        End With
    Case "Marie DURAND"
        With ActiveDocument.FormFields("Texte1")
            .Result = "Directrice RH"
        End With
     
    End Select
     
    End Sub

  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
    Salut,

    Il faut sortir du champ pour que la modification de la liste soit prise en compte.

    Ou alors, tu dois passer par un UserForm qui prend en compte plus d'évènements.
    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
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2008
    Messages : 13
    Points : 17
    Points
    17
    Par défaut
    Bonjour Heureux-Oli, merci de t'être penché sur mon problème!

    selon toi, quelle est la méthode la plus facile? (Userform ou sortir du champ?)

    Si il n'y a pas de différence, j'aurais tendance à préférer sortir du champ et ne pas utiliser d'userform...

    Cependant, peux-tu m'expliquer en quoi cela consiste? je dois rajouter une ligne de commande après la ligne .Result?

    merci de m'aiguiller!

    Bonne journée!

  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,

    Sortir du champ signifie aller vers un autre contrôle ou vers une zone modifiable du document.

    Un UserForm est une boîte de dialogue personnalisée que l'on doit fermer lorsque l'on a termine pour revenir sur le document.
    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
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2008
    Messages : 13
    Points : 17
    Points
    17
    Par défaut
    re bonjour tout le monde!

    je continue à chercher une solution pour mon problème.

    J'ai essayé de passer par un UserForm et cela fonctionne, mais je rencontre cependant encore des problèmes, pourriez-vous me dire ce qui ne va pas dans mon code?

    les problèmes:

    1° - le nom sélectionné dans la liste déroulante revient toujours au premier nom après la validation du UserForm (dans mon fichier exemple: Sophie)
    2° - je n'arrive pas à faire en sorte d'afficher l'Userform à partir de ma liste déroulante, je passe par un bouton de commande. Pour que cela fonctionne avec la liste déroulante, je suis obligé de cliquer quelque par sur le document et puis de re sélectionner la liste déroulante...

    Ci-joint mon fichier,

    merci pour votre aide et vos conseils!
    Fichiers attachés Fichiers attachés

Discussions similaires

  1. [AC-2010] Renvoyer La valeur d'un champ calculé d'une requete dans un champ donné d'une table
    Par ThaHardy dans le forum Requêtes et SQL.
    Réponses: 21
    Dernier message: 13/07/2015, 16h40
  2. Mise à jour de données suite à une requete
    Par laurentX3 dans le forum SAGE
    Réponses: 7
    Dernier message: 26/06/2013, 09h36
  3. Mise à jour d'un champ texte via une liste déroulante
    Par dedein84 dans le forum Langage
    Réponses: 5
    Dernier message: 08/03/2008, 20h24
  4. Réponses: 2
    Dernier message: 30/08/2006, 22h51
  5. Modification d'une combo suite à la saisi dans un champ texte
    Par GabriHell dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 16/05/2006, 17h48

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