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 à jour à distance d'un sous formulaire


Sujet :

VBA Access

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    84
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Juin 2007
    Messages : 84
    Points : 51
    Points
    51
    Par défaut mise à jour à distance d'un sous formulaire
    Bonjour,

    Je vous explique mon problème :

    J'ai un formulaire à 4 onglets (fiche_ent) dont 2 correspondent à des sous-formulaires.

    Il est possible d'accéder à ce formulaire à onglets (fiche_ent) depuis un autre formulaire (liste_ent) par un lien sur le nom de l'entreprise.
    La mise à jour du form à onglets se fait bien sur les 2 onglets où il n'y a pas de sous-formulaire grâce à la requête source. Mais les 2 sous-formulaires ne se mettent pas à jour.

    voici le code du lien (depuis liste_ent vers fiche_ent) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Private Sub NOM_CLI_Click()
     
    DoCmd.OpenForm "Recherche_fiche_ent"
    Forms!Recherche_fiche_ent!Code_Client = Me.COD_CLI
    Forms!Recherche_fiche_ent.Requery
    Forms!Recherche_fiche_ent!Nom_Client = Me.NOM_CLI
    Forms!Recherche_fiche_ent!Code_Client = Me.COD_CLI
    Forms!Recherche_fiche_ent.Refresh
     
    End Sub
    Comment puis-je faire pour que par cet évènement les 2 sous-formulaires soient aussi mis à jour.

    J'ai essayé d'inscrire:
    (Contact est le nom d'un des sous-formulaire) mais sans succès. (Refresh non plus ne fonctionne pas) je pense que je suis tout près, mais je ne vois pas comment faire...

    Est ce quelqu'un pourrait me donner un ptit coup de pouce svp?

    Merci d'avance

  2. #2
    Expert éminent
    Avatar de Lou Pitchoun
    Profil pro
    Inscrit en
    Février 2005
    Messages
    5 038
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Février 2005
    Messages : 5 038
    Points : 8 268
    Points
    8 268
    Par défaut
    Salut,

    Essaie ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Forms![fiche_ent]![Contact].Form.Requery

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    84
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Juin 2007
    Messages : 84
    Points : 51
    Points
    51
    Par défaut
    Salut Kikof,
    ça faisait longtemps

    Bon, tout va bien, ça marche pô...

    J'ai l'impression qu'Access ne lit pas mon code !
    La base que j'ai créée a été importée dans une autre base qui contenait la structure (toutes les tables et requêtes qui permettent de la relier au serveur) mais depuis, c'est trop le bazard !

    Il me fait des bugs là où il n'y en avait pas avant...

    En gros avec mon code j'envoyais par le clic depuis le form2 les infos sur nom et code client dans le form fiche_client et il se mettait à jour grâce à l'event afterupdate mais là ça marche plus...
    (si si ça marchait pour de vrai j'ai pas rêvé!)
    Et maintant (depuis que la base a été importée) il ne met plus à jour les 2 onglets normaux (sans sous form)

    la petite débutante en access que je suis est bien dépassée et mon maître de stage est en vacances...

  4. #4
    Expert éminent
    Avatar de Lou Pitchoun
    Profil pro
    Inscrit en
    Février 2005
    Messages
    5 038
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Février 2005
    Messages : 5 038
    Points : 8 268
    Points
    8 268
    Par défaut
    Bon des questions :

    Quel est le lien entre les sous formulaires et le formulaire ?
    le form fiche_client et il se mettait à jour grâce à l'event afterupdate mais là ça marche plus
    L'évènement AfterUpdate de fiche_client ?
    Tu me parles de fiche_ent.

  5. #5
    Membre habitué
    Inscrit en
    Mars 2007
    Messages
    337
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 337
    Points : 188
    Points
    188
    Par défaut
    C'est pas une histoire de champs pères/champs fils tout ça ?
    Le lien est-il toujours fait entre ton formulaire principal et tes sous-formulaires ?

  6. #6
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    84
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Juin 2007
    Messages : 84
    Points : 51
    Points
    51
    Par défaut
    Bon des questions :

    Quel est le lien entre les sous formulaires et le formulaire ?

    Citation:
    le form fiche_client et il se mettait à jour grâce à l'event afterupdate mais là ça marche plus

    L'évènement AfterUpdate de fiche_client ?
    Tu me parles de fiche_ent.
    J'avoue j'ai dit n'importe quoi sur ce coup dsl

    je parle tjr du form fiche_ent
    les sous-form sont liés au form par les champs COD_CLI présents dans chacuns des sous form et le form fiche_ent

    pour mouaa : les champs père et fils sont liés et fonctionnent sans pb quand je fais défiler les ent dans le form fiche_ent, la mise à jour des sous-form est ok.

  7. #7
    Expert éminent
    Avatar de Lou Pitchoun
    Profil pro
    Inscrit en
    Février 2005
    Messages
    5 038
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Février 2005
    Messages : 5 038
    Points : 8 268
    Points
    8 268
    Par défaut
    Euh, j'ai relu avec plus d'attention ton 1er message suite au dernier :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    DoCmd.OpenForm "Recherche_fiche_ent", , , "Code_Client = " & Me.COD_CLI
    Toujours pas ??

  8. #8
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    84
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Juin 2007
    Messages : 84
    Points : 51
    Points
    51
    Par défaut
    En fait je dois donner plus d'infos je crois :

    Dans le form2 quand je clic sur le lien, la fiche_ent s'ouvre bien et sans bug (=le form à 4 onglets) le nom et le code client qui sont des ZDL dans l'entete du form sont bien mis à jour, mais pas le détail du formulaire, même pas les onglets "classiques" qui se mettent normalement automatiquement à jour sur la mise à jour du nom OU du code client (les 2 ZDL).

    Je crois que les sous_form ça sera pour plus tard, mais j'capte pas pkoi ya pas de mise à jour sur le détail du form. [saletés d'onglets...]

    PS : j'ai déjà résolu un gros bug, dans cette base MS DAO 3,6 n'était pas coché... c déjà un pb en moins

  9. #9
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    84
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Juin 2007
    Messages : 84
    Points : 51
    Points
    51
    Par défaut
    J'ai trouvé l'erreur...

    A chercher compliqué on oublie de regarder les choses basiques...
    J'avais changé la source de mon formulaire, en mettant la table au lieu de ma requête qui me permet de mettre à jour l'ensemble sur les choix faits dans les 2 ZDL.

    Et du coup, même "à distance" la mise à jour des 2 onglets se fait toute seule, de même que celle des 2 sous_form.

    Désolée

    Merci encore de ton aide Kikof

    Vivement le week end...
    Marie

    PS : mais pour le code que tu as mis dans le dernier post, je suis tout à fait d'accord, d'ailleurs, mon code est construit de la sorte : cf le premier post de cette discussion...

  10. #10
    Expert éminent
    Avatar de Lou Pitchoun
    Profil pro
    Inscrit en
    Février 2005
    Messages
    5 038
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Février 2005
    Messages : 5 038
    Points : 8 268
    Points
    8 268
    Par défaut
    les onglets "classiques" qui se mettent normalement automatiquement à jour sur la mise à jour du nom OU du code client (les 2 ZDL).
    La voilà la solution...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Private Sub NOM_CLI_Click()
     
    DoCmd.OpenForm "Recherche_fiche_ent"
    Forms!Recherche_fiche_ent!Code_Client = Me.COD_CLI
    Forms!Recherche_fiche_ent!Nom_Client = Me.NOM_CLI
    Forms!Recherche_fiche_ent.Refresh
    Forms!Recherche_fiche_ent.NomZLM_AfterUpdate
     
    End Sub
    Edit :
    Bon ben tant pis alors

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

Discussions similaires

  1. [AC-2003] Mise à jour liste déroulante dans sous-formulaire
    Par jeanpierre78 dans le forum IHM
    Réponses: 2
    Dernier message: 01/04/2011, 22h36
  2. [AC-2010] mise à jour champ dans plusieurs sous-formulaires
    Par philenull dans le forum VBA Access
    Réponses: 3
    Dernier message: 15/03/2011, 23h46
  3. [AC-2007] Mise à jour Contrôle d'un sous-formulaire
    Par Alain92110 dans le forum IHM
    Réponses: 0
    Dernier message: 11/03/2010, 18h53
  4. [AC-2000] Mise à jour zone de liste sous formulaire
    Par SLEGRAND76 dans le forum IHM
    Réponses: 0
    Dernier message: 01/10/2009, 16h47
  5. Réponses: 6
    Dernier message: 12/01/2009, 09h29

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