OVH Cloud OVH Cloud

Empêcher la fermeture sauvage d'Access

3 réponses
Avatar
Laurent
Bonjour à tous & toutes,

J'ai un petit souci avec mon code. Je cherche à empêcher la fermeture
"sauvage" d'Access par Alt F4 ou en appuyant sur la croix. J'ai donc
développé un petit module placé dans mon formulaire "menu général".

Si j'essaie de quitter Access alors que des formulaires sont ouverts,
j'obtiens bien le message d'erreur invitant l'utilisateur à quitter
proprement l'application , mais il est dès lors impssible de cliquer sur le
dernier formulaire : plus rien ne se passe.

Par contre, en débogage, si je ferme le dernier formulaire ouvert au moyen
de docmd.close acform, "x" ("x" étant le dernier formulaire ouvert,
l'utilisateur reçoit à nouveau la main ??

Quelqu'un a-t-il une 'chtite idée pour moi ??

Merci de votre précieuse aide.

Bonne journée.
Laurent



Private Sub Form_Unload(Cancel As Integer)


If Me.bCloseForm.Value = True Then
Call MsgBox("Please use Quit Button to exit Gescoord", vbExclamation +
vbOKOnly, "Quit Gescoord 2005")
Cancel = True
Else
End If

End Sub

3 réponses

Avatar
Raymond [mvp]
si plus rien ne se passe c'est que tu as un problème de code qui tourne en
rond.
pour supprimer la croix de access il faut utiliser une api (
http://officesystem.access.free.fr/apidisablex.htm) et pour supprimer le
alt+F4 il faut tester la valeur des touches enfoncées dans le formulaire.

comment fais-tu tout ça ?

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


"Laurent" a écrit dans le message de
news:
Bonjour à tous & toutes,

J'ai un petit souci avec mon code. Je cherche à empêcher la fermeture
"sauvage" d'Access par Alt F4 ou en appuyant sur la croix. J'ai donc
développé un petit module placé dans mon formulaire "menu général".

Si j'essaie de quitter Access alors que des formulaires sont ouverts,
j'obtiens bien le message d'erreur invitant l'utilisateur à quitter
proprement l'application , mais il est dès lors impssible de cliquer sur
le
dernier formulaire : plus rien ne se passe.

Par contre, en débogage, si je ferme le dernier formulaire ouvert au moyen
de docmd.close acform, "x" ("x" étant le dernier formulaire ouvert,
l'utilisateur reçoit à nouveau la main ??

Quelqu'un a-t-il une 'chtite idée pour moi ??

Merci de votre précieuse aide.

Bonne journée.
Laurent



Private Sub Form_Unload(Cancel As Integer)


If Me.bCloseForm.Value = True Then
Call MsgBox("Please use Quit Button to exit Gescoord", vbExclamation +
vbOKOnly, "Quit Gescoord 2005")
Cancel = True
Else
End If

End Sub





Avatar
Laurent
Merci Raymond,

Jusqu'à maintenant, je gérais cela par une case à cocher dans le menu
général; j'en testais la valeur au moment où je décharge le formulaire
(Form_unload).

La méthode n'est peut-être pas excellente ??

En ce qui concerne le test sur la touche ALT + F4, je dois t'avouer que je
ne sais pas très bien comment m'y prendre.

Merci de ton aide.

A bientôt,
Laurent


"Raymond [mvp]" wrote in message
news:#43H9r#
si plus rien ne se passe c'est que tu as un problème de code qui tourne en
rond.
pour supprimer la croix de access il faut utiliser une api (
http://officesystem.access.free.fr/apidisablex.htm) et pour supprimer le
alt+F4 il faut tester la valeur des touches enfoncées dans le formulaire.

comment fais-tu tout ça ?

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


"Laurent" a écrit dans le message de
news:
Bonjour à tous & toutes,

J'ai un petit souci avec mon code. Je cherche à empêcher la fermeture
"sauvage" d'Access par Alt F4 ou en appuyant sur la croix. J'ai donc
développé un petit module placé dans mon formulaire "menu général".

Si j'essaie de quitter Access alors que des formulaires sont ouverts,
j'obtiens bien le message d'erreur invitant l'utilisateur à quitter
proprement l'application , mais il est dès lors impssible de cliquer sur
le
dernier formulaire : plus rien ne se passe.

Par contre, en débogage, si je ferme le dernier formulaire ouvert au
moyen


de docmd.close acform, "x" ("x" étant le dernier formulaire ouvert,
l'utilisateur reçoit à nouveau la main ??

Quelqu'un a-t-il une 'chtite idée pour moi ??

Merci de votre précieuse aide.

Bonne journée.
Laurent



Private Sub Form_Unload(Cancel As Integer)


If Me.bCloseForm.Value = True Then
Call MsgBox("Please use Quit Button to exit Gescoord", vbExclamation
+


vbOKOnly, "Quit Gescoord 2005")
Cancel = True
Else
End If

End Sub









Avatar
Raymond [mvp]
Bonjour.

regarde la page : http://officesystem.access.free.fr/vba/touches.htm

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


"Laurent" a écrit dans le message de news:

Merci Raymond,

Jusqu'à maintenant, je gérais cela par une case à cocher dans le menu
général; j'en testais la valeur au moment où je décharge le formulaire
(Form_unload).

La méthode n'est peut-être pas excellente ??

En ce qui concerne le test sur la touche ALT + F4, je dois t'avouer que je
ne sais pas très bien comment m'y prendre.

Merci de ton aide.

A bientôt,
Laurent


"Raymond [mvp]" wrote in message
news:#43H9r#
si plus rien ne se passe c'est que tu as un problème de code qui tourne
en
rond.
pour supprimer la croix de access il faut utiliser une api (
http://officesystem.access.free.fr/apidisablex.htm) et pour supprimer le
alt+F4 il faut tester la valeur des touches enfoncées dans le formulaire.

comment fais-tu tout ça ?

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


"Laurent" a écrit dans le message de
news:
Bonjour à tous & toutes,

J'ai un petit souci avec mon code. Je cherche à empêcher la fermeture
"sauvage" d'Access par Alt F4 ou en appuyant sur la croix. J'ai donc
développé un petit module placé dans mon formulaire "menu général".

Si j'essaie de quitter Access alors que des formulaires sont ouverts,
j'obtiens bien le message d'erreur invitant l'utilisateur à quitter
proprement l'application , mais il est dès lors impssible de cliquer
sur
le
dernier formulaire : plus rien ne se passe.

Par contre, en débogage, si je ferme le dernier formulaire ouvert au
moyen


de docmd.close acform, "x" ("x" étant le dernier formulaire ouvert,
l'utilisateur reçoit à nouveau la main ??

Quelqu'un a-t-il une 'chtite idée pour moi ??

Merci de votre précieuse aide.

Bonne journée.
Laurent



Private Sub Form_Unload(Cancel As Integer)


If Me.bCloseForm.Value = True Then
Call MsgBox("Please use Quit Button to exit Gescoord", vbExclamation
+


vbOKOnly, "Quit Gescoord 2005")
Cancel = True
Else
End If

End Sub