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

Access Discussion :

[Débutant]Liste déroulante dans un sous-form avec les données d'un autre sous-form


Sujet :

Access

  1. #1
    Membre habitué Avatar de 1tsiMat
    Profil pro
    Étudiant
    Inscrit en
    Mai 2006
    Messages
    139
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2006
    Messages : 139
    Points : 127
    Points
    127
    Par défaut [Débutant]Liste déroulante dans un sous-form avec les données d'un autre sous-form
    Vous allez commencer à me connaitre avec tous mes posts
    Une petit détail m'avait échappé ...
    Voici mon travail, tout a été créé (mais petit rappel )
    Citation Envoyé par 1tsiMat
    Ma base de données :
    - un produit correspond à 1 ou plusieurs accessoires,
    - un produit correspond aussi à 1 ou plusieurs packs,
    - un pack = plusieurs accessoires,
    - un accessoire peut appartenir à plusieurs packs.

    J'ai donc créer 4 tables :
    - produit(code_produit, libelle_produit),
    - accessoire (ref_accessoire nom_accessoire prix_accessoire commentaire code_produit#),
    - pack(ref_pack nom_pack prix_pack commentaire code_produit#),
    - pack_accessoire (ref_pack#, ref_accessoire#).
    Je dispose d'un formulaire principal, un sous-formulaire accessoire, un autre sous-formulaire pack, un sous-formulaire accessoire_pack qui se situe dans le sous-formulaire pack (un sous-sous-formulaire quoi )

    Arborescence :
    - produit (formulaire principal)
    - accessoire
    - pack
    - pack_accessoire

    J'ai une liste déroulante dans pack_accessoire, qui prend les accessoire situés dans la table accessoire.
    Problème : la liste contient TOUS les accessoires, or je voudrais seulement les accessoires qui se situent dans le formulaire accessoire?
    Vous êtes toujours là?
    Si c'est pas très clair pour vous dites-le moi, s'il est question de code VBA n'hésitez pas j'commence à comprendre
    Merci à ceux qui pourront m'éclairer

    P.S.: Désolé si c'est pas très clair
    N'oubliez pas, si votre problème est résolu, mettez le tag
    En informatique, il n'y a pas de problème, toujours des solutions (parfois pas évidentes à trouver )

  2. #2
    Expert éminent
    Avatar de LedZeppII
    Homme Profil pro
    Maintenance données produits
    Inscrit en
    Décembre 2005
    Messages
    4 485
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Maintenance données produits
    Secteur : Distribution

    Informations forums :
    Inscription : Décembre 2005
    Messages : 4 485
    Points : 7 759
    Points
    7 759
    Par défaut
    Bonsoir,

    J'essairai de modifier le contenu de la liste à chaque changement de produit.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    strSQL = "SELECT * FROM Accessoire WHERE code_produit=" & Me.code_produit & ";"
    Me.Pack.Form.accessoire_pack.Form.listeAccessoire.RowSource=strSQL
    Me.Pack.Form.accessoire_pack.Form.listeAccessoire.Requery
    Pack = sous-formulaire du formulaire principal (Me)
    accessoire_pack = sous formulaire du sous-formulaire Pack
    listeAccessoire = la liste déroulante

    Je n'ai pas testé mais je crois l'idée c'est ça.
    A+

  3. #3
    Membre habitué Avatar de 1tsiMat
    Profil pro
    Étudiant
    Inscrit en
    Mai 2006
    Messages
    139
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2006
    Messages : 139
    Points : 127
    Points
    127
    Par défaut
    Rien ne se passe ... peut être ai-je mal placé le code ... je l'ai mis dans beforeupdate sur ma liste déroulante ... donc soit c'est pas bon, soit j'ai mal placé le code

    Le code donne (mes modifications sont soulignées) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Private Sub ref_accessoire_BeforeUpdate(Cancel As Integer)
        
        strSQL = "SELECT ref_accessoire FROM accessoire WHERE code_produit=" & Me.code_produit & ";"
        Me.Pack.Form.accessoire_pack.Form.ref_accessoire.RowSource = strSQL
        Me.Pack.Form.accessoire_pack.Form.ref_accessoire.Requery
        
    End Sub
    Edit :

    Euh petite question (bete ) dans les propriétés de ma liste je laisse
    Origine source : Table / Requete
    Contenu : SELECT ref_accessoire FROM accessoire;?
    N'oubliez pas, si votre problème est résolu, mettez le tag
    En informatique, il n'y a pas de problème, toujours des solutions (parfois pas évidentes à trouver )

  4. #4
    Membre habitué Avatar de 1tsiMat
    Profil pro
    Étudiant
    Inscrit en
    Mai 2006
    Messages
    139
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2006
    Messages : 139
    Points : 127
    Points
    127
    Par défaut
    Plus personne pour m'aider ?????
    N'oubliez pas, si votre problème est résolu, mettez le tag
    En informatique, il n'y a pas de problème, toujours des solutions (parfois pas évidentes à trouver )

  5. #5
    Expert éminent
    Avatar de LedZeppII
    Homme Profil pro
    Maintenance données produits
    Inscrit en
    Décembre 2005
    Messages
    4 485
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Maintenance données produits
    Secteur : Distribution

    Informations forums :
    Inscription : Décembre 2005
    Messages : 4 485
    Points : 7 759
    Points
    7 759
    Par défaut
    Bonjour

    Le code que j'avais mis en exemple était écrit au niveau du formulaire principal.
    J'ai supposé que code_produit était dans le formulaire principal et que la liste ne devait lister
    que des références d'accessoires associées à ce code_produit.

    Je mettrai le code dans l'évènement Form_Current du formulaire principal, pour la liste s'actualise quand tu changes d'enregistrement.

    Réponse à la deuxième question:
    Oui tu laisse ces propriétés.

    Bon courage

  6. #6
    Membre habitué Avatar de 1tsiMat
    Profil pro
    Étudiant
    Inscrit en
    Mai 2006
    Messages
    139
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2006
    Messages : 139
    Points : 127
    Points
    127
    Par défaut
    Ca y est j'ai enfin trouvé
    Merci LedZeppII pour ton aide précieuse et j'ai rajouté un peu de code de la faq En bref un beau mix, mais le résultat est là
    Mais je vous avoue que j'étais au bord de


    EDIT :

    Je viens de faire le ménage dans le codage et en fait j'utilise même pas le code LedZeppII mais merci quand même de t'être investi
    J'ai seulement utilisé le code donné dans la FAQ, mais comme avant je comprenais rien au code VB (1ère fois que je le voyais ) et vu que j'ai un peu plus de connaissance sur ce code (du moins comment l'utiliser ) et bien j'ai réussi à l'utiliser ...
    N'oubliez pas, si votre problème est résolu, mettez le tag
    En informatique, il n'y a pas de problème, toujours des solutions (parfois pas évidentes à trouver )

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

Discussions similaires

  1. Réponses: 5
    Dernier message: 27/03/2012, 10h43
  2. Réponses: 0
    Dernier message: 24/03/2010, 15h30
  3. Réponses: 9
    Dernier message: 31/03/2009, 22h45
  4. Réponses: 1
    Dernier message: 08/10/2008, 15h30
  5. Réponses: 3
    Dernier message: 09/04/2006, 12h58

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