Bonjour ! J'ai besoin de votre aide pour un petit problème, plutôt un désagrément, dans mon programme. Je vous place le décor. J'ai un formulaire principal avec 2 boutons. J'ai un sous-formulaire vide à la base. J'affiche avec le bouton 1 le sous-formulaire 1, et j'affiche avec le bouton 2 le sous-formulaire 2. Je passe donc d'un sous-formulaire à l'autre en cliquant sur les boutons.
En m'inspirant de la FAQ et des sources, j'empêche Access de mettre à jour les enregistrements de mon sous-formulaire. J'ai donc un bouton qui me permet manuellement de sauvegarder mes mises à jour.
Seulement, si je modifie une donnée, que je n'enregistre pas la mise à jour, et que je clique sur le bouton pour passer à l'autre formulaire, ça ne m'affiche pas du 1° coup le formulaire mais ça se contente de remettre le donnée initiale que j'ai modifié, et ensuite seulement, en recliquant sur le bouton j'accède à l'autre formulaire. C'est pas possible de faire en sorte qu'il passe directement à l'autre formulaire sans enregistrer ?
Mon code :
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 Private Sub Form_Load() ' j'utilise la variable varMAJ pour permettre à mon bouton bSav d'enregistrer varMAJ = 0 End Sub --------------------------------------------------- Private Sub Form_BeforeUpdate(Cancel As Integer) ' si varMAJ = 0 alors ça n'enregistre pas If varMAJ = 0 Then Me.Undo Cancel = True End If End Sub ---------------------------------------------------- Private Sub bSav_Click() varMAJ = 1 DoCmd.RunCommand acCmdSaveRecord varMAJ = 0 End Sub






Répondre avec citation
Partager