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

  1. #1
    Nouveau membre du Club
    problème mises à jour zone de texte par liste déroulante
    Bonjour à tous,

    Voilà mon problème, j'ai un formulaire de commande qui commence enfin à prendre forme (enfin selon moi !).


    J'ai la zone de liste déroulante fournisseur de la table commande qui alimente la 2ème zone de liste déroulante article du SF LigneCde qui elle-méme alimente 2 autres zones de texte (jusqu'ici tout va bien).

    Lorsque je choisis un fournisseur et plusieurs produits, tout se passe correctement mais si sur cette même commande je décide de choisir un autre fournisseur, la liste déroulante article s'efface automatiquement mais pas les zones de texte Désignation, PU HT, total ect...(comme sur l'image).


    J'ai bien mis comme code sur la liste déroulante article :
    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Private Sub cmbArticle_AfterUpdate()
    PU_HT = cmbArticle.Column(4)
    Designation = cmbArticle.Column(5)
    Me.txtDesignation.Requery
    Me.txtTotal.Requery
    Me.txtGlobal.Requery
    Me.Requery
    End Sub


    Mais ça ne marche pas, je l'ai testé aussi sur click, sur change...toujours pas..avec le refresh aussi...

    je sais que ça doit être un truc tout bête mais si quelqu'un pouvait m'aider please...

    merci d'avance

  2. #2
    Modérateur

    Bonjour.

    Oui c'est un problème avec les listes déroulantes.
    La seule méthode que je connaisse c'est d'avoir un champ pour la sélection et un champ pour l'affichage.

    Sur un formulaire unique ou en mode continu, on peut ruser et superposer les 2 champs (un champ liste à fond transparent pour la sélection, un champ texte pour l'affichage sous la liste).
    La superposition nécessite du code pour gérer proprement la récupération du focus et la gestion des saut d'un champ à l'autre avec [Tab].
    Pour les formulaires en mode feuille de données, tu es fait, il faut 2 colonnes.

    Personnellement j'y vais toujours avec le champ de sélection et le champ d'affichage qui sont tous les 2 des listes déroulantes.
    La source de ma 1ère liste est filtrée l'autre ne l'est pas et elle pointe sur le même champ de données.

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

    Tout d'abord merci de ta réponse, un poil déprimante 😃

    Avec toutes les possibilités que peut offrir access, tu es en train de me dire qu'on ne peut pas actualiser des zones de texte en rapport avec des zones de liste déroulantes...!

    J'ai oublié de préciser que je ne suis pas un expert d'access...c'est compliqué concrètement à mettre en place ce dont tu parlais pour contourner cette "anomalie"...?

    Parce ce que c'est pas très ergonomique le rendu de mon formulaire tel quel...

    Merci à toi,

    A+

  4. #4
    Modérateur

    Bonjour.

    on ne peut pas actualiser des zones de texte en rapport avec des zones de liste déroulantes...!
    On peut à condition de ne pas changer la source de la liste dynamiquement et de ne pas être dans un formulaire en mode continu ou feuille de données.

    Dans ton cas, la solution qui me paraît la plus simple est de faire une jointure sur la table qui contient les données à afficher et d'ajouter ces champs dans la source de données.
    Après tu prends les nouveaux champs pour faire l'affichage. Graphiquement le résultat sera le même.

    Si la jointure pause un problème (verrouillage des données en lecture seule), utilise la fonction DFisrt() (désolé je ne sais pas le nom en français) pour aller chercher l'information à afficher dans la source de données.

    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
    Nouveau membre du Club
    Oh oh oh !!

    Je suis loin d'être à ton niveau concernant access...

    J'ai pas tout compris à ta réponse pour être honnête...

  6. #6
    Nouveau membre du Club
    Mais merci pour ta réponse au fait 😃

  7. #7
    Modérateur

    Bonjour.

    J'ai pas tout compris à ta réponse pour être honnête...
    Désolé avec le temps on oublie parfois que les réponses évidentes ne le sont souvent que pour la personne qui les formule.

    Peux-tu préciser ce que tu n'as pas compris ?

    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.

  8. #8
    Membre régulier
    Salut,
    je pense que pour le sous formulaire, il faut créer une requête et dans la partie critère se baser sur le champs fournisseur. Maintenant dans l'évênement après mise en forme mettre une code requery.
    je pense ça peux aller

  9. #9
    Nouveau membre du Club
    Bonjour,

    Tout d'abord, toutes mes excuses d'avoir fait le malpoli ! Je suis parti en vacances entre temps et j'avais oublié cette discussion.

  10. #10
    Membre régulier
    Je pense que c'est mieux de faire un charge pour source et tu fais une actulisation de ton sous formulaire.
    par exemple. Après sélection dans le liste déroulante que tu fait Requery de ton sous formulaire

  11. #11
    Nouveau membre du Club
    Salut Rayan,

    Merci de ta réponse mais j'ai revu ma base et la "construction" de mon formulaire de commande...

    A +

###raw>template_hook.ano_emploi###