Bonjour,
J'aimerais à partir d'un bouton du formulaire principal, lire l'ensemble des records d'un sous-formulaire afin de le valider et si tout est ok réaliser des mises à jour dans d'autres tables via des recordset.
Mon problème est que la lecture du sous-formulaire ne prend pas en compte le dernier record où l'encodage est en cours.
J'ai lu bcp de posts sans trouver de solution
Voici deux exemples de tentatives d'instructions que j'ai codées avant le code ci-dessous
a) DoCmd.RunCommand acCmdSaveRecord
b) Forms![F_Vente]![SF_DetailVente].SetFocus
DoCmd.GoToRecord , , acNewRec
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 If Not Me.SF_DetailVente.Form.Recordset.EOF Then Me.SF_DetailVente.Form.Recordset.MoveFirst Do While Not Me.SF_DetailVente.Form.Recordset.EOF NbRecordDetVente_global = NbRecordDetVente_global + 1 ' mes validations et mises à jour sont réalisées ici Forms![F_Vente].[ZI_TotalVente] = Forms![F_Vente].[ZI_TotalVente] + Nz(Forms!F_Vente![SF_DetailVente]![MtVenteNet], 0) Me.SF_DetailVente.Form.Recordset.MoveNext Loop Me.SF_DetailVente.Form.Recordset.MoveFirst ' pour ne pas provoquer un EOF a la prochaine lecture End If
Pouvez-vous m'aider ?
Merci d'avance
Frédéric
Partager