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 :

Mettre la valeur du contenu en fonction d'un autre contenu selectionner [WD-365]


Sujet :

Word

  1. #1
    Membre à l'essai
    Homme Profil pro
    Responsable sécurité
    Inscrit en
    Février 2017
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Responsable sécurité

    Informations forums :
    Inscription : Février 2017
    Messages : 13
    Points : 11
    Points
    11
    Par défaut Mettre la valeur du contenu en fonction d'un autre contenu selectionner
    Bonjour à tous

    J'atteins une partie de mes limites sur word

    Un contenu sous forme de liste déroulante est crée (jaune) Le nom complet et la valeur son identique

    Un 2nd contenu sous forme de liste déroulant (vert) . Le nom complet de la ville et la valeur serait l'adresse par exemple

    Est il possible de lié le résultat du premier contenu (jaune) et de définir le 2nd en vert

    Je m'explique si je sélectionne NANTES dans l'encadré jaune => Ca me donne l'adresse de nantes dans l'encadré vert.

    Un peux comme excel et sa fonction rechercheV

    Merci pour votre aide
    Fichiers attachés Fichiers attachés

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    376
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 376
    Points : 596
    Points
    596
    Par défaut
    Bonjour,

    Pour moi ta deuxième liste déroulante ne sert à rien. En fait ce que tu veux, c'est un texte particulier en fonction du choix dans la liste déroulante jaune... Donc, le résultat de ce choix ne doit pas être mis sous forme de liste.

    De toutes façons, il faut une macro.

    m@rina

  3. #3
    Membre à l'essai
    Homme Profil pro
    Responsable sécurité
    Inscrit en
    Février 2017
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Responsable sécurité

    Informations forums :
    Inscription : Février 2017
    Messages : 13
    Points : 11
    Points
    11
    Par défaut
    J'essaie de faire la macro mais je n'y arrive pas

    Pour info j'ai mis en titre de la premiére liste : Agence
    Et de la zone texte T 21

    Comment puis je utiliser la formule dans un tableau : je serais en case B2



    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
    20
    21
    22
    23
     
    Private Sub Document_ContentControlOnExit(ByVal CC As ContentControl, Cancel As Boolean)
     
    Dim texte As String
    Dim choix As String
    choix = CC.Range.Text
     
    If CC.Title = "Agence" Then
     
    Select Case choix
    Case "Nantes"
     texte = "TEST NANTES LIEUX"
    Case "Lyon"
     texte = "TEST LIEU LYON"
     
    End Select
     
    With ActiveDocument.Shapes("T21").TextFrame
        .TextRange.Text = texte
        .AutoSize = True
    End With
    End If
    End Sub

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    376
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 376
    Points : 596
    Points
    596
    Par défaut
    Tu dis que tu n'y arrives pas, mais on ne sait pas pourquoi... Message d'erreur ??

    Pour un tableau, en cellule B2, tu remplaces le remplissage de la zone de texte par :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ActiveDocument.Tables(1).Rows(2).Cells(2).Range.Text = texte
    Supposant qu'il s'agit du premier tableau du document.

    J'insiste sur le fait que, contrairement à Excel, il y a peu d'événements avec Word, et avec ces contrôles de contenu, il s'agit d'un événement à la sortie (il n'existe pas d'événement sur le changement). Donc, une fois le choix fait, il faut vraiment cliquer ailleurs.

  5. #5
    Membre à l'essai
    Homme Profil pro
    Responsable sécurité
    Inscrit en
    Février 2017
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Responsable sécurité

    Informations forums :
    Inscription : Février 2017
    Messages : 13
    Points : 11
    Points
    11
    Par défaut
    Quand je lance la macro ça me fait

    Microsoft Word =0

    Je ne pige vraiment pas le truc...

    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
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    Private Sub Document_ContentControlOnExit(ByVal CC As ContentControl, Cancel As Boolean)
    'macro écrite par m@rina
     
    Dim texte As String
    Dim choix As String
    choix = CC.Range.Text
     
    If CC.Title = "Agence" Then
     
    Select Case choix
    Case "Nantes"
     texte = "Adresse Nantes"
    Case "Lyon"
     texte = "Adresse Lyon"
    End Select
     
    With ActiveDocument.Shapes("Adresse").TextFrame
        .TextRange.Text = texte
        .AutoSize = True
    End With
    End If
    End Sub
     
    Private Sub Document_ContentControlOnExitee(ByVal CC As ContentControl, Cancel As Boolean)
    If CC.Title = "Saisons" Then
     
    Dim texte As String
    Dim choix As String
     
    choix = CC.Range.Text
     
    Select Case choix
    Case "Nantes"
     texte = "Adresse Nantes"
    Case "Lyon"
     texte = "Adresse Lyon"
    End Select
     
    'ActiveDocument.InlineShapes("Adresse").TextFrame.TextRange.Text = texte
    ActiveDocument.InlineShapes(1).Select
    Selection.TypeText Text:=texte
    End If
    End Sub
    Sub testd()
    MsgBox ActiveDocument.Shapes.Count
    For Each machinchose In ActiveDocument.Shapes
    MsgBox machinchose.Name
    Next
    End Sub
    Fichiers attachés Fichiers attachés

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    376
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 376
    Points : 596
    Points
    596
    Par défaut
    Déjà, tu n'as pas à "lancer" la macro, c'est une macro événementielle...

    La première macro ne peut pas fonctionner, tu n'as pas de "Shape" nommé "adresse".*

    La seconde macro ne peut pas fonctionner, il n'y a pas d'Inlineshape, et une InlineShape n'a pas de propriété Textframe

    Pour le tableau :
    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
    Private Sub Document_ContentControlOnExit(ByVal CC As ContentControl, Cancel As Boolean)
    If CC.Title = "Agence" Then
     
    Dim texte As String
    Dim choix As String
     
    choix = CC.Range.Text
     
    Select Case choix
    Case "Nantes"
     texte = "Adresse Nantes"
    Case "Lyon"
     texte = "Adresse Lyon"
    End Select
     
    ActiveDocument.Tables(1).Rows(5).Cells(2).Range.Text = texte
    End If
    End Sub
    m@rina

  7. #7
    Membre à l'essai
    Homme Profil pro
    Responsable sécurité
    Inscrit en
    Février 2017
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Responsable sécurité

    Informations forums :
    Inscription : Février 2017
    Messages : 13
    Points : 11
    Points
    11
    Par défaut
    Bonsoir Marina.

    Je n'arrive pas à comprendre le langage. On parle de Inshape et de shape ça ne me parle pas du tout

    J'ai crée une liste déroulante avec nom et balise Adresse.

    Après je ne vois pas comment il faut faire. JE te remercie , je suis franchement désolé de t'avoir fait bosser pour rien

  8. #8
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    376
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 376
    Points : 596
    Points
    596
    Par défaut
    Bonsoir,

    Je ne sais plus quoi te répondre !
    Tu me donnes un fichier, je te donne la macro qui va avec...

    Que faire de plus ?

    Là, on ne parle plus de Shape ou Inlineshape...

    m@rina

  9. #9
    Membre à l'essai
    Homme Profil pro
    Responsable sécurité
    Inscrit en
    Février 2017
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Responsable sécurité

    Informations forums :
    Inscription : Février 2017
    Messages : 13
    Points : 11
    Points
    11
    Par défaut
    Bonsoir Marina,

    Tout es ok. Je devais sacrément être à la rue avant hier

    JE te remercie pour le code et les liens. J'ai pu apprendre pas mal de choses.

    Bonne soirée

  10. #10
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    376
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 376
    Points : 596
    Points
    596
    Par défaut
    Ahhhh ! me voilà rassurée !!!
    ça finissait par ressembler à une conversation en mandarin sans sous-titrage !!

    m@rina

  11. #11
    Membre à l'essai
    Homme Profil pro
    Responsable sécurité
    Inscrit en
    Février 2017
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Responsable sécurité

    Informations forums :
    Inscription : Février 2017
    Messages : 13
    Points : 11
    Points
    11
    Par défaut


    En plus j'ai pu réadapter pas mal de chose, ça m'aide énormément

    Citation Envoyé par m@rina Voir le message
    Ahhhh ! me voilà rassurée !!!
    ça finissait par ressembler à une conversation en mandarin sans sous-titrage !!

    m@rina

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

Discussions similaires

  1. Réponses: 4
    Dernier message: 08/05/2008, 20h25
  2. Mettre a jour un champ en fonction d'un autre
    Par Falcdyr dans le forum IHM
    Réponses: 2
    Dernier message: 14/04/2008, 14h29
  3. Réponses: 1
    Dernier message: 03/05/2007, 08h10
  4. Mettre à jour un fichier en fonction d'un autre
    Par k6971 dans le forum Langage
    Réponses: 4
    Dernier message: 07/12/2006, 14h08
  5. Réponses: 5
    Dernier message: 13/03/2006, 15h21

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