Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Access > VBA Access
VBA Access Le forum pour les questions relatives au code VBA sous Access, et à son environnement de développement VBE.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 24/10/2011, 14h35   #1
Candidat au titre de Membre du Club
 
Homme Boris
Étudiant
Inscription : août 2011
Messages : 53
Détails du profil
Informations personnelles :
Nom : Homme Boris
Localisation : France, Ille et Vilaine (Bretagne)

Informations professionnelles :
Activité : Étudiant
Secteur : Finance

Informations forums :
Inscription : août 2011
Messages : 53
Points : 13
Points : 13
Par défaut Problème chargement infos dans formulaire

Bonjour le forum,

Dans un formulaire de modification je charge des infos présentes dans la table que je souhaite modifier grâce à ce code :

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
Private Sub Stagiaire_AfterUpdate()
 
On Error GoTo Stagiaire_AfterUpdate_Err
 
    DoCmd.GoToControl "NUM_DOSSIER"
    DoCmd.FindRecord Forms!MODIF_COUTS!Stagiaire, acEntire, False, , False, acCurrent, True
 
Stagiaire_AfterUpdate_Exit:
    Exit Sub
 
Stagiaire_AfterUpdate_Err:
    MsgBox Error$
    Resume Stagiaire_AfterUpdate_Exit
End Sub
On sélectionne un stagiaire dans une liste déroulante dépendante d'une autre liste de numéros de dossier.

Je rencontre un problème lorsqu'un même stagiaire se trouve dans deux dossiers différents : les infos qui se chargent sont celles du premier dossier (enregistrement) saisi pour ce stagiaire.

Ce que j'essaye de faire, c'est de charger les infos en fonction du numéro de dossier ET du nom du stagiaire.

Est-ce réalisable?

Merci d'avance!
borisp est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/10/2011, 22h54   #2
Modérateur
 
Homme René MAROT
Inscription : octobre 2005
Messages : 5 475
Détails du profil
Informations personnelles :
Nom : Homme René MAROT
Localisation : Canada

Informations forums :
Inscription : octobre 2005
Messages : 5 475
Points : 7 564
Points : 7 564
Essaye avec quelque chose comme cela :

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
private sub TrouverEnr(prmClefDossier as variant, prmClefStagiaire as variant)
 
   if not isnull(prmClefDossier) and not isnull(prmClefStagiaire) then
     dim r as dao.recorset:set r=me.recordset
     r.findfirst("[ClefDosier]=" & ClefDossier & " AND [ClefStagiaire]=" & prmClefStagiaire)
 
     if r.nomatch then
       msgbox "Pas d'enr"
     end if
 
     set r=nothing
   end if
 
end sub
J'ai supposé que ClefDossier et ClefStagiaire sont numériques. Si ce sont des textes il faut mettre

Code :
     r.findfirst("[ClefDosier]=""" & ClefDossier & """ AND [ClefStagiaire]=""" & prmClefStagiaire & """")
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.
marot_r est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 25/10/2011, 09h19   #3
Candidat au titre de Membre du Club
 
Homme Boris
Étudiant
Inscription : août 2011
Messages : 53
Détails du profil
Informations personnelles :
Nom : Homme Boris
Localisation : France, Ille et Vilaine (Bretagne)

Informations professionnelles :
Activité : Étudiant
Secteur : Finance

Informations forums :
Inscription : août 2011
Messages : 53
Points : 13
Points : 13
Merci pour ta réponse,

cependant je ne sais pas ou mettre le code, j'ai essayé dans Afterupdate et il me sort "erreur de compilation, objet non défini par l'utilisateur...", j'ai essayé en cochant la référence Microsoft Dao 3.x library ça n'a rien fait. Et ne faut il pas que je cite ma table un moment ou un autre dans ton code?

Merci pour ton aide!
borisp est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 25/10/2011, 14h13   #4
Modérateur
 
Homme René MAROT
Inscription : octobre 2005
Messages : 5 475
Détails du profil
Informations personnelles :
Nom : Homme René MAROT
Localisation : Canada

Informations forums :
Inscription : octobre 2005
Messages : 5 475
Points : 7 564
Points : 7 564
Il faut ajouter la sub à ton formulaire puis remplacer

Code :
DoCmd.FindRecord Forms!MODIF_COUTS!Stagiaire, acEntire, False, , False, acCurrent, True
dans AfterUpdate

Code :
call TrouverEnr(me.NomTonChampClefDossier, me.NomTonChampClefStagiaire)
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.
marot_r est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 25/10/2011, 15h52   #5
Candidat au titre de Membre du Club
 
Homme Boris
Étudiant
Inscription : août 2011
Messages : 53
Détails du profil
Informations personnelles :
Nom : Homme Boris
Localisation : France, Ille et Vilaine (Bretagne)

Informations professionnelles :
Activité : Étudiant
Secteur : Finance

Informations forums :
Inscription : août 2011
Messages : 53
Points : 13
Points : 13
J'ai encore l'erreur de compilation type non défini par l'utilisateur

Et je dois mettre exactement comme toi prmClefDossier ? ou mettre le champ de mon formulaire?

UN GRAND MERCI!
borisp est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 25/10/2011, 20h27   #6
Modérateur
 
Homme René MAROT
Inscription : octobre 2005
Messages : 5 475
Détails du profil
Informations personnelles :
Nom : Homme René MAROT
Localisation : Canada

Informations forums :
Inscription : octobre 2005
Messages : 5 475
Points : 7 564
Points : 7 564
Tu dois mettre le code de la sub tel que je l'ai tapé.

C'est au moment de l'appel qu'il faut mettre le nom du champ qui contient l'info.

Code :
call TrouverEnr(me.NomTonChampClefDossier, me.NomTonChampClefStagiaire)
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.
marot_r est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/10/2011, 09h12   #7
Candidat au titre de Membre du Club
 
Homme Boris
Étudiant
Inscription : août 2011
Messages : 53
Détails du profil
Informations personnelles :
Nom : Homme Boris
Localisation : France, Ille et Vilaine (Bretagne)

Informations professionnelles :
Activité : Étudiant
Secteur : Finance

Informations forums :
Inscription : août 2011
Messages : 53
Points : 13
Points : 13
J'ai recopié exactement ton code en mettant mais deux noms de champ ou il faut et il me sort : Erreur de Compilation : Membre de méthode ou de donnéees introuvable...

borisp est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/10/2011, 13h54   #8
Modérateur
 
Homme René MAROT
Inscription : octobre 2005
Messages : 5 475
Détails du profil
Informations personnelles :
Nom : Homme René MAROT
Localisation : Canada

Informations forums :
Inscription : octobre 2005
Messages : 5 475
Points : 7 564
Points : 7 564
Peux-tu poster la ligne de code qui génère l'erreur ?

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.
marot_r est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 11h56.


 
 
 
 
Partenaires

Hébergement Web