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 :

Sélectionner un enregistrement dans une zone de liste déroulante [AC-2013]


Sujet :

VBA Access

  1. #1
    Membre éprouvé Avatar de HDU71000
    Homme Profil pro
    Développement Access - En recherche de poste télétravail (invalide)
    Inscrit en
    Août 2016
    Messages
    716
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Saône et Loire (Bourgogne)

    Informations professionnelles :
    Activité : Développement Access - En recherche de poste télétravail (invalide)

    Informations forums :
    Inscription : Août 2016
    Messages : 716
    Points : 1 023
    Points
    1 023
    Par défaut Sélectionner un enregistrement dans une zone de liste déroulante
    Hello,

    voilà ma question.

    J'ai un form dans lequel, jusqu'à présent, je sélectionne une valeur à l'aide d'une zone de liste (indépendante), et une fois cette sélection faite (événement after_update), un tas d'enregistrements liés dans des sous-forms s'affichent.

    Je souhaite maintenant qu'à l'ouverture de ce form, une valeur de la zone de liste soit directement sélectionnée.
    Cette valeur sera égale à une liste d'un autre form.

    Pour simplifier, j'ai testé avec load() du form :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    me.zonedeliste.colum(5) = 23
    ou 23 sera à remplacer par la valeur de l'autre form, mais déjà en rentrant "en dur" la valeur, cela ne fonctionne pas.

    Erreur 424 : objet requis.

    Est-ce possible ??

    Merci.

    A+

  2. #2
    Modérateur

    Homme Profil pro
    Inscrit en
    Octobre 2005
    Messages
    15 331
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2005
    Messages : 15 331
    Points : 23 786
    Points
    23 786
    Par défaut
    Non,

    les listes ou les listes déroulantes sont des objets destinées à l'affichage pas à modification des données.

    • Tu peux remplacer ta liste par un sous-formulaire en mode feuille de données.
    • Tu peux écrire soit dans la source de la liste soit dans la table qui alimente la source et demander une mise à jour de l'affichage en faisant quelque chose comme :


    Personnellement j'irai avec le sous-formulaire qui offre plus de possibilités et de contrôle sur l'affichage.

    A+
    Vous voulez une réponse rapide et efficace à vos questions téchniques ?
    Ne les posez pas en message privé mais dans le forum, vous bénéficiez ainsi de la compétence et de la disponibilité de tous les contributeurs.
    Et aussi regardez dans la FAQ Access et les Tutoriaux Access. C'est plein de bonnes choses.

  3. #3
    Membre éprouvé Avatar de HDU71000
    Homme Profil pro
    Développement Access - En recherche de poste télétravail (invalide)
    Inscrit en
    Août 2016
    Messages
    716
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Saône et Loire (Bourgogne)

    Informations professionnelles :
    Activité : Développement Access - En recherche de poste télétravail (invalide)

    Informations forums :
    Inscription : Août 2016
    Messages : 716
    Points : 1 023
    Points
    1 023
    Par défaut
    Merci,

    mais je voulais simplement "simuler" un clic et un choix sur la zone de liste que de tout refaire, car derrière il y a pas mal d'onglets avec sous-forms et donc requêtes liées à la valeur de cette zone de liste.

    Merci

  4. #4
    Modérateur

    Homme Profil pro
    Inscrit en
    Octobre 2005
    Messages
    15 331
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2005
    Messages : 15 331
    Points : 23 786
    Points
    23 786
    Par défaut
    Ok, désolé.

    Tu ne peux pas forcer une colonne mais tu peux définir la "valeur" de la liste.
    Il va falloir parcourir les lignes de la liste, comparer la colonne 5 et quand on a trouvé la bonne ligne la signaler comme sélectionnée ou assigner cet valeur au contrôle liste.
    Par contre je n'ai pas trouvé d'exemple clair de comment procéder.

    A+
    Vous voulez une réponse rapide et efficace à vos questions téchniques ?
    Ne les posez pas en message privé mais dans le forum, vous bénéficiez ainsi de la compétence et de la disponibilité de tous les contributeurs.
    Et aussi regardez dans la FAQ Access et les Tutoriaux Access. C'est plein de bonnes choses.

  5. #5
    Membre éprouvé Avatar de HDU71000
    Homme Profil pro
    Développement Access - En recherche de poste télétravail (invalide)
    Inscrit en
    Août 2016
    Messages
    716
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Saône et Loire (Bourgogne)

    Informations professionnelles :
    Activité : Développement Access - En recherche de poste télétravail (invalide)

    Informations forums :
    Inscription : Août 2016
    Messages : 716
    Points : 1 023
    Points
    1 023
    Par défaut
    J'ai avancé un peu.

    Je n'ai maintenant dans la zone de liste que l'item qui me convient (grace à une zone de texte), mais je voudrai que cette ligne (la seule donc) soit sélectionnée

    J'ai tenté avec
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Me.TP_choix.Selected(1) = True
    Call TP_choix_Click
    Mais la ligne n'est pas sélectionnée automatiquement

    Merci

  6. #6
    Membre éprouvé Avatar de HDU71000
    Homme Profil pro
    Développement Access - En recherche de poste télétravail (invalide)
    Inscrit en
    Août 2016
    Messages
    716
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Saône et Loire (Bourgogne)

    Informations professionnelles :
    Activité : Développement Access - En recherche de poste télétravail (invalide)

    Informations forums :
    Inscription : Août 2016
    Messages : 716
    Points : 1 023
    Points
    1 023
    Par défaut
    Donc en fait la question est dorénavant :
    comment sélectionner la 1ère ligne (la seule) d'une zone de liste automatiquement ?

    Merci

  7. #7
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    101
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 101
    Points : 76
    Points
    76
    Par défaut
    Bonjour, j'ai fait l'essai, mais peut etre n'ai je pas tout compris

    ma liste s'appelle filtre, et j'ai un evenement filtre_afterupdate, j'imagine que chez vous cet evenement comporte une ouverture d'autres formulaires
    J'ai place dans l'open du 1er form
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    Private Sub Form_open(Cancel As Integer)
    me.filtre=15
    filtre_afterupdate
    end sub
    15 etant le chiffre recherché ds la colonne liee

  8. #8
    Membre éprouvé Avatar de HDU71000
    Homme Profil pro
    Développement Access - En recherche de poste télétravail (invalide)
    Inscrit en
    Août 2016
    Messages
    716
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Saône et Loire (Bourgogne)

    Informations professionnelles :
    Activité : Développement Access - En recherche de poste télétravail (invalide)

    Informations forums :
    Inscription : Août 2016
    Messages : 716
    Points : 1 023
    Points
    1 023
    Par défaut
    Bonjour et merci,

    mais la zone de liste de se met pas à jour, elle reste à null.

    A+

  9. #9
    Membre éprouvé Avatar de HDU71000
    Homme Profil pro
    Développement Access - En recherche de poste télétravail (invalide)
    Inscrit en
    Août 2016
    Messages
    716
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Saône et Loire (Bourgogne)

    Informations professionnelles :
    Activité : Développement Access - En recherche de poste télétravail (invalide)

    Informations forums :
    Inscription : Août 2016
    Messages : 716
    Points : 1 023
    Points
    1 023
    Par défaut
    Bon,

    j'ai "trouvé", en fait j'avais une zone de liste modifiable (mea culpa), et je n'arrivais pas à sélectionner le seul enregistrement qu'elle contient (enregistrement récupéré depuis un autre form).
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    me.laliste.selected(1) = true
    ne fonctionnait pas.

    En remplaçant cette zone de liste modifiable par une zone de liste, le code fonctionne.

    Merci et désolé pour cette erreur de vocabulaire.

    A+

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

Discussions similaires

  1. [AC-2007] Insérer manuellement enregistrement dans une zone de liste
    Par philou029 dans le forum VBA Access
    Réponses: 2
    Dernier message: 26/05/2009, 17h57
  2. 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
  3. Réponses: 2
    Dernier message: 26/10/2006, 09h47
  4. Enregistrement dans une Zone de liste déroulante
    Par w3sk3r dans le forum Access
    Réponses: 23
    Dernier message: 20/08/2006, 19h10
  5. Réponses: 8
    Dernier message: 24/02/2006, 09h59

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