OVH Cloud OVH Cloud

bloquer la sortie d'Access

4 réponses
Avatar
Philippe
bonjour, je d=E9veloppe sous Access 97 (bon d'accord je suis=20
vieux jeux !), et sur l'=E9v=E8nement Unload d'un formulaire,=20
j'ai le code suivant :

'emp=EAcher la fermeture du formulaire quand le contr=F4le=20
multi enregistrement n'est pas correct :
If ControleMultiEnregistrements =3D False Then
MsgBox strMessage, vbExclamation
Cancel =3D True
End If

Seulement voil=E0 : quand je quitte directement=20
l'application (en faisant "quitter" dans le menu, ou en=20
cliquant sur la croix en haut =E0 droite), j'ai bien le=20
Msgbox (donc je rentre bien dans le Unload), par contre il=20
quitte quand m=EAme l'application. Pas bien du tout !
Qui a une id=E9e ? Merci pour votre collaboration, Philippe

4 réponses

Avatar
Raymond
Bonjour.

je ne connais qu'une solution qui peut empêcher access de quitter: charger
un formulaire en minimize qui ne se décharge jamais. Dans ce formulaire
placer un événement timer et tester une condition "public" mise à jour par
tes soins en temps opportuns (dans un autre formulaire) qui fermera le
formulaire et quittera access.

--
@+
Raymond Access MVP.
http://access.seneque.free.fr/
http://users.skynet.be/mpfa/charte.htm pour une meilleure
efficacité de tes interventions sur MPFA.


"Philippe" a écrit dans le message de
news:09b601c367b4$a7b161a0$
bonjour, je développe sous Access 97 (bon d'accord je suis
vieux jeux !), et sur l'évènement Unload d'un formulaire,
j'ai le code suivant :

'empêcher la fermeture du formulaire quand le contrôle
multi enregistrement n'est pas correct :
If ControleMultiEnregistrements = False Then
MsgBox strMessage, vbExclamation
Cancel = True
End If

Seulement voilà : quand je quitte directement
l'application (en faisant "quitter" dans le menu, ou en
cliquant sur la croix en haut à droite), j'ai bien le
Msgbox (donc je rentre bien dans le Unload), par contre il
quitte quand même l'application. Pas bien du tout !
Qui a une idée ? Merci pour votre collaboration, Philippe
Avatar
Philippe
Je viens de trouver une solution que je vais adopter en
fin de compte :
mon formulaire est une fenêtre indépendante et modale, et
dans ce cas je ne peux pas fermer l'application, pas mal ?

Sinon Raymon, ça me plait bien comme solution, j'ai juste
une question et toujours la même finalement : comment tu
fais pour "un formulaire en minimize qui ne se décharge
jamais." ?



-----Message d'origine-----
Bonjour.

je ne connais qu'une solution qui peut empêcher access de
quitter: charger

un formulaire en minimize qui ne se décharge jamais. Dans
ce formulaire

placer un événement timer et tester une
condition "public" mise à jour par

tes soins en temps opportuns (dans un autre formulaire)
qui fermera le

formulaire et quittera access.

--
@+
Raymond Access MVP.
http://access.seneque.free.fr/
http://users.skynet.be/mpfa/charte.htm pour une meilleure
efficacité de tes interventions sur MPFA.


"Philippe" a écrit dans
le message de

news:09b601c367b4$a7b161a0$
bonjour, je développe sous Access 97 (bon d'accord je suis
vieux jeux !), et sur l'évènement Unload d'un formulaire,
j'ai le code suivant :

'empêcher la fermeture du formulaire quand le contrôle
multi enregistrement n'est pas correct :
If ControleMultiEnregistrements = False Then
MsgBox strMessage, vbExclamation
Cancel = True
End If

Seulement voilà : quand je quitte directement
l'application (en faisant "quitter" dans le menu, ou en
cliquant sur la croix en haut à droite), j'ai bien le
Msgbox (donc je rentre bien dans le Unload), par contre il
quitte quand même l'application. Pas bien du tout !
Qui a une idée ? Merci pour votre collaboration, Philippe


.



Avatar
Raymond
RE.

comment tu fais pour "un formulaire en minimize qui ne se décharge
jamais." ?


Rien justement.
tu places ces fonctions dans le code du formulaire:

Option Compare Database
Option Explicit

Public FautFermer As Boolean

Private Sub Form_Load()
DoCmd.Minimize ' ou
' me.Visibleúlse
Me.TimerInterval = 5000
FautFermer = False
End Sub

Private Sub Form_Timer()
If FautFermer Then
DoCmd.Close acForm, Me.Name
Quit
End If
End Sub

--
@+
Raymond Access MVP.
http://access.seneque.free.fr/
http://users.skynet.be/mpfa/charte.htm pour une meilleure
efficacité de tes interventions sur MPFA.


"Philippe" a écrit dans le message de
news:08a101c367c4$f7fbc870$
Je viens de trouver une solution que je vais adopter en
fin de compte :
mon formulaire est une fenêtre indépendante et modale, et
dans ce cas je ne peux pas fermer l'application, pas mal ?

Sinon Raymon, ça me plait bien comme solution, j'ai juste
une question et toujours la même finalement : comment tu
fais pour "un formulaire en minimize qui ne se décharge
jamais." ?



-----Message d'origine-----
Bonjour.

je ne connais qu'une solution qui peut empêcher access de
quitter: charger

un formulaire en minimize qui ne se décharge jamais. Dans
ce formulaire

placer un événement timer et tester une
condition "public" mise à jour par

tes soins en temps opportuns (dans un autre formulaire)
qui fermera le

formulaire et quittera access.

--
@+
Raymond Access MVP.
http://access.seneque.free.fr/
http://users.skynet.be/mpfa/charte.htm pour une meilleure
efficacité de tes interventions sur MPFA.


"Philippe" a écrit dans
le message de

news:09b601c367b4$a7b161a0$
bonjour, je développe sous Access 97 (bon d'accord je suis
vieux jeux !), et sur l'évènement Unload d'un formulaire,
j'ai le code suivant :

'empêcher la fermeture du formulaire quand le contrôle
multi enregistrement n'est pas correct :
If ControleMultiEnregistrements = False Then
MsgBox strMessage, vbExclamation
Cancel = True
End If

Seulement voilà : quand je quitte directement
l'application (en faisant "quitter" dans le menu, ou en
cliquant sur la croix en haut à droite), j'ai bien le
Msgbox (donc je rentre bien dans le Unload), par contre il
quitte quand même l'application. Pas bien du tout !
Qui a une idée ? Merci pour votre collaboration, Philippe


.



Avatar
Raymond
.../...
la variable fautfermer doit se trouver dans un module standard et non dans
le formulaire. Excuses pour la non précision.

--
@+
Raymond Access MVP.
http://access.seneque.free.fr/
http://users.skynet.be/mpfa/charte.htm pour une meilleure
efficacité de tes interventions sur MPFA.