Bonjour à tous et à toutes,
J'ai un 1er formulaire avec un contrôle[txtNombreDepart] dans lequel je saisis une année.
J'y ai mis 2 boutons, 1 qui déclenche l'exécution d'une requête (à faire en 1er), l'autre qui ouvre un formulaire basé sur cette requête ; tout cela fonctionne parfaitement
J'ai rajouté un bouton [f paiement] pour ouvrir un autre formulaire.
Dans ce formulaire, j'ai un contrôle [txtNbrDepart] dans lequel, en fonctionnement normal, je saisis une année ; cela déclenche la procédure suivante
Pour le moment à ce bouton j'ai associé la macro que je joins ici (je ne sais pas comment insérer les actions d'une macro à l'intérieur d'une discussion)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34 Private Sub txtNbreDepart_AfterUpdate() Dim iNumDepart As Integer Dim Ctl As Control 'Vérifier que le contrôle n'est pas null If IsNull(Me.txtNbreDepart) Then Exit Sub iNumDepart = Me.txtNbreDepart 'Aménager les contrôles For Each Ctl In Me.Controls If Ctl.Name Like "txtDU#" Then Ctl.ControlSource = iNumDepart + Right(Ctl.Name, 1): GoTo ctlSuivant If Ctl.Name Like "et#" Then Ctl.Caption = (iNumDepart) + Right(Ctl.Name, 1) If Ctl.Name Like "txtAJour#" Then Ctl.ControlSource = "=DCount(""*"",""0_R_COTISATIONS_ADHERENTS"",""Cotisation_An=" & iNumDepart + Right(Ctl.Name, 1) & " and Cotisation_Du=0"")" GoTo ctlSuivant End If If Ctl.Name Like "txtRetard#" Then Ctl.ControlSource = "=DCount(""*"",""0_R_COTISATIONS_ADHERENTS"",""Cotisation_An=" & iNumDepart + Right(Ctl.Name, 1) & " and Cotisation_Du<>0"")" GoTo ctlSuivant End If If Ctl.Name Like "txtTlDu#" Then Ctl.ControlSource = "=DSum(""Cotisation_Du"",""0_R_COTISATIONS_ADHERENTS"",""Cotisation_An=" & iNumDepart + Right(Ctl.Name, 1) & """)" GoTo ctlSuivant End If ctlSuivant: Next Ctl 'Créer la requête source 0_R_COTISATIONS_ANNEE_0_+_4_SUIVANTES Call MAJCotisDues_0_à_4(iNumDepart) 'L'affecter comme source Me.RecordSource = "0_R_COTISATIONS_ANNEE_0_+_4_SUIVANTES" Me.Recalc Me.txtNbreDepart = iNumDepart End Sub
Cela marche en partie puisque mon formulaire 0_Formulaire_paiement_des_cotisations s'ouvre bien et que l'année saisie dans le 1er formulaire s'affiche bien dans le contrôle [txtNbrDepart]
Par contre la procédure ne va pas plus loin, même si je fais [Entrée] sur cette valeur qui s'affiche, rien ne se passe
J'ai essayé de rajouter une autre action
[Exécuter Code] avec comme
[Nom de la fonction] Private Sub txtNbreDepart_AfterUpdate()
Cela ne fonctionne pas.
L’exécution de cette procédure peut-elle se faire automatiquement ?
Si oui quelle action utiliser ?
Merci de votre aide
A+
C15
Partager