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

VBA Access Discussion :

Indiquer valeur pour une zone de liste déroulante à choix multiples [Débutant(e)]


Sujet :

VBA Access

  1. #1
    Membre à l'essai
    Homme Profil pro
    Ingénieur environnement
    Inscrit en
    Septembre 2014
    Messages
    73
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur environnement
    Secteur : Santé

    Informations forums :
    Inscription : Septembre 2014
    Messages : 73
    Points : 20
    Points
    20
    Par défaut Indiquer valeur pour une zone de liste déroulante à choix multiples
    Bonjour,

    Ma question doit paraitre vraiment enfantine mais je connais très mal la syntaxe VBA

    Dans un formulaire j'ai ajouté un bouton effectuant plusieurs action avec un code vba très simple. Une des actions me pose problème.
    Lorsque je clique sur ce bouton, je souhaite, entre autre, affecter une valeur à un champ de type zone de liste déroulante à choix multiples. Biensur la valeur que je souhaite affecter est incluse dans la liste des choix précédemment paramétrer.
    Le champ en question de mon formulaire est le champ Nature_dernier_contact, pouvant prendre les valeurs multiples suivantes : "Téléphone";"E-mail";"Questionnaire"

    Le code en question que j'essaye d'appliquer est celui ci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     Me.Nature_dernier_contact = "E-mail"
    Lorsque je souhaite appliquer le code j'ai une erreur : Erreur d'éxécution '-2147352567 (8000200009)'

    Je pense qu'il s'agit d'une erreur de syntaxe toute bête mais je n'y arrive pas. J'ai notamment essayé avec
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Me.Nature_dernier_contact.Value
    mais sans succès.

    Merci d'avance pour votre aide

  2. #2
    Membre chevronné
    Inscrit en
    Août 2006
    Messages
    1 588
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 1 588
    Points : 2 178
    Points
    2 178
    Par défaut
    Bonjour,
    La propriété Selection Multiple à Aucun ne doit pas créer d'erreur. Pour les autres choix, il faut sélectionner l'item.

  3. #3
    Membre à l'essai
    Homme Profil pro
    Ingénieur environnement
    Inscrit en
    Septembre 2014
    Messages
    73
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur environnement
    Secteur : Santé

    Informations forums :
    Inscription : Septembre 2014
    Messages : 73
    Points : 20
    Points
    20
    Par défaut
    Citation Envoyé par helas Voir le message
    Bonjour,
    La propriété Selection Multiple à Aucun ne doit pas créer d'erreur. Pour les autres choix, il faut sélectionner l'item.
    Bonjour,

    Je ne comprends pas votre réponse. Vous voulez dire que je dois passer mon champs à sélection multiples non autorisés dans ses propriétés ? Mais ce n'est pas ce que je souhaite faire. Je veux garder cette possibilité de selection multiple.

    Qu'entendez vous par "sélectionner l'item" ? Vous voulez dire manuellement ? Ce n'est pas ce que je souhaite faire. Pour entrer plus en détails dans mon problème, j'ai créé un bouton qui me permet de faire une relance par e-mail à différents contacts. Quand je clique l'e-mail est envoyé, mon champs "Date de dernier contact" est renseigné automatiquement avec la date du jour et je souhaite que le champ "Nature du dernier contact" soit automatique rempli par le choix "E-mail". Ca c'est de la cas des relances automatiques.

    Cordialement,

    Fontaine

  4. #4
    Membre chevronné
    Inscrit en
    Août 2006
    Messages
    1 588
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 1 588
    Points : 2 178
    Points
    2 178
    Par défaut
    Bonjour,
    si Nature_dernier_contact est une zone de texte, votre code est bon
    si Nature_dernier_contact est une liste déroulante, il s'agit de sélectionner un élément de cette liste
    dans le cas d'une sélection
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
     For i = 0 To Me!Nature_dernier_contact.ListCount - 1
      If Me!Nature_dernier_contact.Column(0, i) = NatureContact Then Me!Nature_dernier_contact.Selected(i) = True
     Next i
    NatureContact étant la chaine de caractères contenant email, telephone ou ...
    mais il se peut que je n'aie pas saisi le problème

  5. #5
    Membre à l'essai
    Homme Profil pro
    Ingénieur environnement
    Inscrit en
    Septembre 2014
    Messages
    73
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur environnement
    Secteur : Santé

    Informations forums :
    Inscription : Septembre 2014
    Messages : 73
    Points : 20
    Points
    20
    Par défaut
    Citation Envoyé par helas Voir le message
    Bonjour,
    si Nature_dernier_contact est une zone de texte, votre code est bon
    si Nature_dernier_contact est une liste déroulante, il s'agit de sélectionner un élément de cette liste
    dans le cas d'une sélection
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
     For i = 0 To Me!Nature_dernier_contact.ListCount - 1
      If Me!Nature_dernier_contact.Column(0, i) = NatureContact Then Me!Nature_dernier_contact.Selected(i) = True
     Next i
    NatureContact étant la chaine de caractères contenant email, telephone ou ...
    mais il se peut que je n'aie pas saisi le problème
    Bonjour et merci pour votre aide :

    Nature_dernier_contact est une liste déroulante à choix multiple. Je comprends mal le code VBA que vous postez. Pourquoi une boucle avec un if ? Il n'y pas de condition. Je souhaite quand je clique sur un bouton tiers de mon formulaire que le champ "Nature_dernier_contact" prenne la valeur fixe "E-mail". Je pense qu'il manque juste quelque chose de simple dans mon code initial (du style Me.Nature_dernier_contact.Value ou Me.Nature_dernier_contact.Item) mais je ne sais pas quoi. Peut être la propriété "Column" ? Ou quelque chose du style
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Me!Nature_dernier_contact.Selected(i) = True
    avec i qui serait le n-1 numéro correspondant à "E-mail" dans ma liste des 3 choix (dans mon cas i=1).

    Je suis désolé ca rje pense que mon pb est tout simple mais en tant que débutant je n'arrive pas a vous le transposer clairement

  6. #6
    Membre à l'essai
    Homme Profil pro
    Ingénieur environnement
    Inscrit en
    Septembre 2014
    Messages
    73
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur environnement
    Secteur : Santé

    Informations forums :
    Inscription : Septembre 2014
    Messages : 73
    Points : 20
    Points
    20
    Par défaut
    J'ai essayé à l'instant un MsgBox pour voir s'il comprenait ce que je voulais .

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    MsgBox (Me.Nature_dernier_contact.Column(0,1))
    Il me renvoie bien la valeur "E-mail".

    Maintenant si je souhaite lui dire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Me.Nature_dernier_contact=Me.Nature_dernier_contact.Column(0,1)
    J'ai le message d'erreur initial. C'est juste ca ce que je veux faire. Attribuer une valeur fixe dans un champ de zone de liste à choix multiple lorsque je clique sur un bouton tiers.

  7. #7
    Membre chevronné
    Inscrit en
    Août 2006
    Messages
    1 588
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 1 588
    Points : 2 178
    Points
    2 178
    Par défaut
    Bonjour,
    Pour bien comprendre s'agit-il d'une Zone de liste déroulante ou d'une Zone de liste avec le propriété Sélection multiple à étendu

  8. #8
    Membre à l'essai
    Homme Profil pro
    Ingénieur environnement
    Inscrit en
    Septembre 2014
    Messages
    73
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur environnement
    Secteur : Santé

    Informations forums :
    Inscription : Septembre 2014
    Messages : 73
    Points : 20
    Points
    20
    Par défaut
    Bonjour, comme je l'indique il s'agit d'une zone de liste déroulante avec la possibilité de choix multiples.

Discussions similaires

  1. Réponses: 1
    Dernier message: 01/06/2012, 15h40
  2. Réponses: 5
    Dernier message: 21/05/2012, 12h02
  3. Réponses: 5
    Dernier message: 18/11/2009, 11h25
  4. Affichage des valeurs disponibles dans une zone de liste déroulante
    Par azerty dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 04/06/2007, 12h29
  5. Réponses: 4
    Dernier message: 30/06/2006, 16h18

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