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

IHM Discussion :

Comment avoir différente marque et quantité à partir de la référence sélectionnée dans une liste déroulante ? [AC-2013]


Sujet :

IHM

  1. #1
    Nouveau membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Mars 2019
    Messages
    37
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 28
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2019
    Messages : 37
    Points : 27
    Points
    27
    Par défaut Comment avoir différente marque et quantité à partir de la référence sélectionnée dans une liste déroulante ?
    Bonjour,

    Je débute sur Access depuis peu et j'essaie de concevoir une application dont une partie permettra de gérer les entrées en stock.

    Sauf que je galère depuis un moment , et j'ai vraiment besoin de votre aide.

    Dans un premier temps j'ai voulu afficher la marque du produit et sa quantité à partir de la référence sélectionnée dans une liste déroulante.

    (Je précise que la table entree est reliée aux tables produit et fournisseur formant des relations plusieurs à plusieurs.

    Donc les propriétés de la table entree sont: idprod , idfour , qte, date.)

    Et pour se faire, j'ai executé le code vba ci-dessous qui marche très bien mais le souci c'est qu'il ne me donne pas le résultat souhaité.

    Lorsqu'on sélectionne une référence dans la première ligne par exemple,

    la même marque de produit ainsi que sa quantité sont répétés dans les autres lignes.

    Alors le truc ici c'est comment faire pour obtenir différente marque et quantité à partir

    de la référence sélectionnée dans une liste déroulante pour chaque ligne du formulaire.

    Quelqu'un pourrait il m'aidez svp.

    Merci d'avance !

    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
     Private Sub list_ref_Change()
     
    Dim enrg As Recordset: Dim base As Database
    Set base = Application.CurrentDb
    Set enrg = base.OpenRecordset("SELECT marque, qteprod FROM produit WHERE idprod=" & list_ref & ";", dbOpenDynaset)
    qteapp.Value = 0: qteac.Value = 0
     
    enrg.MoveFirst
    marque.Value = enrg.Fields("marque").Value
    qteac.Value = enrg.Fields("qteprod").Value
     
    qteapp.SetFocus
     
    enrg.Clone
    base.Close
     
    Set enrg = Nothing
    Set base = Nothing
     
    End sub

  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
    Bonjour.

    La répétition vient du fait qu'en Access il ne semble n'y avoir qu'un seul "enregistrement" affiché pour les champs indépendants et qu'il est recopié sur toute la liste.
    Donc une modif sur une ligne, se répercute sur TOUTES les autres lignes. C'est assez frustrant.

    La solution est de déplacer l'affichage dans la source de données en utilisant une jointure (solution la plus efficace) ou la fonction Dfirst().
    Donc il faut que tu ajoutes les champs nécessaires à ce qui alimente ton formulaire.

    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
    Nouveau membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Mars 2019
    Messages
    37
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 28
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2019
    Messages : 37
    Points : 27
    Points
    27
    Par défaut
    Bonjour Marot,

    désolée mon retard, j'ai rencontré des soucis techniques avec mon ordinateur quelques jours après le poste, d'ou la cause de mon silence. Je te remercie pour la solution, elle est très pratique , j'ai donc réussi à créer mon formulaire.

    Mais j'aimerai savoir autre chose, tel que le formulaire est conçu, est ce possible de créer un bouton personnalisé qui affiche par exemple un message de validation au clic, donc dès enregistrement d'informations et reset celles-ci du sous-formulaire ? si, comment je pourrai procéder ?

    Merci d'avance !

  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
    Bonjour.

    Si ton bouton est sur le formulaire en continu, il fait parti des éléments "indépendants" recopiés sur tous les enregistrements donc si tu changes le texte (prorpiété Légende (Caption en Anglais)) il va se répéter.

    Si ton bouton est sur ton formulaire principal, oui c'est assez simple avec un peu de code VBA qui va changer Caption.

    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
    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
    Bonjour.

    J'ai créé la discussion https://www.developpez.net/forums/d1...nregistrement/ pour donner plus de visibilité à ta dernière question.

    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.

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

Discussions similaires

  1. Réponses: 1
    Dernier message: 15/12/2013, 21h38
  2. Réponses: 4
    Dernier message: 08/01/2013, 15h53
  3. Réponses: 2
    Dernier message: 14/11/2008, 18h31
  4. Comment récupérer le texte sélectionné dans une liste déroulante ?
    Par Je-cherche-pfe dans le forum Windows Forms
    Réponses: 3
    Dernier message: 02/09/2007, 20h35

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