Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Form_Close

4 réponses
Avatar
Warrio
Bonjour!

Est-il possible d'empêcher que l'utilisateur d'un formulaire Access ferme
une fenêtre?
de telle sorte que lorsqu'il ne puisse pas fermer la fenêtre sans avoir
valider les données entrées
Que dois-je utiliser dans la procédure Form_Close?

Merci pour toute suggestion

4 réponses

Avatar
3stone
Salut,

"Warrio"
Est-il possible d'empêcher que l'utilisateur d'un formulaire Access ferme
une fenêtre?
de telle sorte que lorsqu'il ne puisse pas fermer la fenêtre sans avoir
valider les données entrées
Que dois-je utiliser dans la procédure Form_Close?



En fermant la fenêtre, Access sauve automatiquement les données.

Si tu veux que l'utilisateur confirme en cliquant sur un bouton,
tu peux faire ceci...


Déclare une variable piblic pour ton formulaire (en haut, avant la première sub)

Dim NoFormClose As Boolean

Dans l'événement "Sur ouverture" tu mets:

NoFormClose = True


Dans l'événement "Sur libération" (Unload)

Private Sub Form_Unload(Cancel As Integer)
If NoFormClose = True Then
Cancel = NoFormClose
Msgbox "Validez par le bouton"
End If
End Sub


Dans le code de ton bouton, tu ajoute au début:

NoFormClose = False


Avec cela, un clic sur la croix [X] affiche le message
et la sortie n'est permise que par ton bouton.

Ok ?


--
A+
Pierre (3stone) Access MVP
-----------------------------
http://users.skynet.be/mpfa
-----------------------------

Avatar
Raymond [mvp]
Bonjour.

il faut prévoir en premier un bouton de validation pour pouvoir sortir.
ensuite supprimer la X placée dans la légende
dans le form_Close c'est trop tard il faut le tester dans Form_Undo
tester si cet événement a été déclenché par ton bouton ou non et mettre un
Cancel = True si ce n'est pas toi qui a déclanché la fermeture.

--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"Warrio" a écrit dans le message de
news:4090f711$0$714$
Bonjour!

Est-il possible d'empêcher que l'utilisateur d'un formulaire Access ferme
une fenêtre?
de telle sorte que lorsqu'il ne puisse pas fermer la fenêtre sans avoir
valider les données entrées
Que dois-je utiliser dans la procédure Form_Close?

Merci pour toute suggestion




Avatar
Xavier HUE
Bonjour Warrio,

Dans l'évènement Form_Unload, tu as le paramètre Cancel.
Le mettre à True annule l'évènement de fermeture.

En résumé:
- Au niveau module de ton form
Dim booModifEnCours As Boolean

- Dans Form_Dirty, signaler une modif
booModifEnCours = True

- Dans Form_AfterUpdate, signaler plus de modif
booModifEnCours = False

- Form_Unload, vérifier si modif en cours
If booModifEnCours = True Then
Cancel = True
Exit Sub
End If

Cordialement.
Avatar
Warrio
Merci!
ca marche niquelle!!


"Warrio" a écrit dans le message de
news:4090f711$0$714$
Bonjour!

Est-il possible d'empêcher que l'utilisateur d'un formulaire Access ferme
une fenêtre?
de telle sorte que lorsqu'il ne puisse pas fermer la fenêtre sans avoir
valider les données entrées
Que dois-je utiliser dans la procédure Form_Close?

Merci pour toute suggestion