Récuperer une valeur d'un autre formulaire
Résolu
Titi32600
Messages postés
92
Statut
Membre
-
yg_be Messages postés 23437 Date d'inscription Statut Contributeur Dernière intervention -
yg_be Messages postés 23437 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour à tous
Je souhaiterais à l'ouverture de mon formulaire 2, récupérer la valeur d'un champ située dans mon formulaire 1 (qui reste ouvert).
j'ai inscrit dans mon formulaire 2 la procédure en ouverture :
Me![ID_FI] = Forms![creation_Intervention]![ID_FI]
me![ID_FI] "champs à mettre à jour"
[creation_Intervention] "formulaire 1
mais j'obtiens une erreur
Merci encore de votre aide.
Je souhaiterais à l'ouverture de mon formulaire 2, récupérer la valeur d'un champ située dans mon formulaire 1 (qui reste ouvert).
j'ai inscrit dans mon formulaire 2 la procédure en ouverture :
Me![ID_FI] = Forms![creation_Intervention]![ID_FI]
me![ID_FI] "champs à mettre à jour"
[creation_Intervention] "formulaire 1
mais j'obtiens une erreur
Merci encore de votre aide.
3 réponses
-
yg_be Messages postés 23437 Date d'inscription Statut Contributeur Dernière intervention Ambassadeur 1 588
Peut-être :Forms("[creation_Intervention]").Controls("[ID_FI]")-
-
Comme tu as deux fois [ID_FI], merci de clarifier lequel pose problème quand relié à une source.
Je pense que tu devrais expliquer plus globalement ce que tu fais avec tes deux formulaires, et quel est le rôle de [ID_FI] dans chacun des formulaires et dans la table.
Sinon nous risquons de t'aider à progresser dans une mauvaise direction.
-
-
Pas de problème
NOTA : j’ai renommé les champs [ID_FI] des différents formulaires, afin d’éviter les confusions.
Dans un formulaire nommé « Creation_Intervention », je rentre la date de création, et un N° de fiche est créé.
Suivant le type d’intervention, un second formulaire est ouvert. Dans mon exemple, c’est le formulaire « Creation_Fiche_Corrective ».
A l’ouverture de celui-ci, le code VBA devra copier le champ [ID_creation_FI] du formulaire « Creation_Intervention », pour le coller dans le champ [ID_FI_Correctif] du formulaire actuel.
Le champ [ID_FI_Correctif], est relié à la source contrôle : ID_FI_Correctif de la table « Fiches_Correctives ».
Le code VBA fonctionne très bien, si le champ [ID_FI_Correctif], est indépendant, mais si, comme dans mon exemple, il est relié à une table, il ne fonctionne pas.
tit32600-
Je suppose ceci :
1) Le formulaire « Creation_Intervention » crée un nouvel enregistrement dans la table «Fiches_Correctives »
2) Le formulaire « Creation_Fiche_Corrective » est ouvert pour afficher et permettre de modifier ce nouvel enregistrement.
Si je n'ai pas compris, merci d'expliquer.
Si j'ai compris, je pense que tu dois, dans l'instruction d'ouverture du second formulaire, préciser quel est l'enregistrement à afficher, au lieu de le faire ensuite, dans la procédure en ouverture.
Exemple :DoCmd.OpenForm "Creation_Fiche_Corrective", , ,"ID_FI_Correctif = " & Me.[ID_creation_FI]
-
-
yg_be Messages postés 23437 Date d'inscription Statut Contributeur Dernière intervention Ambassadeur 1 588
C'est sans doute le bon moment pour partager ton fichier, ou d'expliquer :
- comment le formulaire "Creation_Fiche_Corrective" est appelé
- comment il est lié à la table « Fiches_Correctives »