Bonjour,
J'ai un formulaire Détails de l'employé avec :
Un onglet "Emploi" ayant notamment les listes déroulantes suivantes :
- Le statut de la personne (Cadre ou non Cadre)
- La position
- Le coefficient
Je voulait que lorsque l'on sélectionne le statut de la personne, le contenu de position se met à jour en fonction (s'il est cadre, qu'il n'affiche que les positions liées aux cadres).
Idem pour le coefficient qui se met à jour en fonction de la position et du statut.
J'ai donc inséré le code suivant dans contenu position :
Le code suivant dans contenu coefficient :
Code : Sélectionner tout - Visualiser dans une fenêtre à part SELECT [Salariés - Position].Position FROM [Salariés - Position] WHERE ((([Salariés - Position].Statut)=[Formulaires]![Détails de l'employé]![Statut]));
Code : Sélectionner tout - Visualiser dans une fenêtre à part SELECT [Salariés - Position].Coefficient FROM [Salariés - Position] WHERE ((([Salariés - Position].Statut)=[Formulaires]![Détails de l'employé]![Statut]) AND (([Salariés - Position].Position)=[Formulaires]![Détails de l'employé]![Position]));
Enfin, pour qu'il puisse ce mettre à jour, j'ai inséré en VBA "Après MAJ" le code suivant :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 Private Sub Position_AfterUpdate() Me.Coefficient = Null Me.Coefficient.Requery Me.Coefficient = Me.Position.ItemData(0) End Sub Private Sub Statut_AfterUpdate() Me.Position = Null Me.Position.Requery Me.Position = Me.Statut.ItemData(0) End Sub
Jusque là tout va bien, mon formulaire marche du tonnerre.
Sauf que ce formulaire, je l'ai joint à un formulaire de navigation (onglets horizontaux à 2 niveaux). Et là, c'est le drame.
Quand je change le statut, et que je vais sur Position, une fenêtre s'ouvre :
"Entrer une valeur de paramètre Formulaires!Détails de l'employé!Statut"
Ça marche très bien quand je ne passe pas par le formulaire navigation.... comment faire svp ?
Merci d'avance pour votre aide !
Partager