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 :

Mise a jour d'un formulaire a partir d'une liste déroulante d'un autre formulaire [AC-2007]


Sujet :

VBA Access

  1. #1
    Membre régulier
    Inscrit en
    Janvier 2007
    Messages
    123
    Détails du profil
    Informations forums :
    Inscription : Janvier 2007
    Messages : 123
    Points : 70
    Points
    70
    Par défaut Mise a jour d'un formulaire a partir d'une liste déroulante d'un autre formulaire
    Bonjour à tous, de retour ici après 2 années de maladie, donc j'ai beaucoup perdu mon access.

    Voici mon problème.

    J'ai un formulaire (A) basé sur une table(C) qui contient 3 champs (IdProduit, Produit et Checkbox)
    J'ai un autre formulaire (B) basé sur une autre table(D) qui contient plusieurs champs ainsi que les champs (IdProduit et Checkbox) ce formulaire est en mode continue
    Lorsque j'ouvre ma base de données j'ai une macro autoexec qui ouvre mes formulaire A et B

    Dans les détails de mon formulaire (B) j'ai une liste déroulante basé sur la table (C)

    Ce que je voudrait faire c'est la procédure événementielle (Après MAJ) qui mettra la valeurs -1 dans le checkbox du formulaire (A) au bon record set

    Voici mon code qui ne fonctionne pas:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    UPDATE[Forms]![F_A].CheckBox = -1
    WHERE Me.IdProduit = [Forms]![F_A].IdProduit
    [Forms]![F_A].Requery
    Merci

  2. #2
    Rédacteur/Modérateur

    Avatar de ClaudeLELOUP
    Homme Profil pro
    Chercheur de loisirs (ayant trouvé tous les jours !)
    Inscrit en
    Novembre 2006
    Messages
    20 594
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 78
    Localisation : Belgique

    Informations professionnelles :
    Activité : Chercheur de loisirs (ayant trouvé tous les jours !)
    Secteur : Finance

    Informations forums :
    Inscription : Novembre 2006
    Messages : 20 594
    Points : 282 192
    Points
    282 192
    Par défaut
    Bonjour et bon rétablissement,

    Vois l’exemple en annexe.

    Une requête de mise à jour de ta tableC, en fonction de la valeur de la zone de liste du formulaireB (requête enregistrée dans l'exemple) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    UPDATE TableC SET TableC.checkbox = -1
    WHERE (((TableC.Produit)=[Formulaires]![FormulaireB]![LaZoneDeListe]));
    Et ceci comme code associé à l’événement Après mise à jour de la zone de liste :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Option Compare Database
    Option Explicit
     
    Private Sub LaZoneDeListe_AfterUpdate()
      DoCmd.SetWarnings False 'pour éviter le message
      DoCmd.OpenQuery "UneRequête" 'pour exécuter la requête
      DoCmd.SetWarnings True 'pour rétablir les messages
      Forms!FormulaireA.Requery 'pour actualiser le formulaireA
     
    End Sub
    Fichiers attachés Fichiers attachés
    SVP ne m'envoyez pas de messages privés pour poser des questions techniques, vous n'aurez pas de réponse !

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

Discussions similaires

  1. [AC-2010] Utiliser valeur d'une liste de choix dans une liste déroulante d'un autre formulaire
    Par Sébastien1609 dans le forum Macros Access
    Réponses: 1
    Dernier message: 11/06/2015, 15h31
  2. Réponses: 1
    Dernier message: 16/01/2015, 10h13
  3. Réponses: 1
    Dernier message: 01/05/2010, 20h44
  4. Réponses: 4
    Dernier message: 12/10/2009, 14h46
  5. Réponses: 6
    Dernier message: 16/09/2009, 23h43

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