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

Déactivé le X permettant de fermer la base de donnée

9 réponses
Avatar
Guy du Lac
Bonjour à tous,

J'ai développé une petite application comptable. Mon application est en
essai chez quelques clients potentiels en ce moment. Tout cela pour dire
qu'un client voulait fermer un onglet mais par erreur a fermé la BD et que
maintenant les débits et crédits ne balancent plus.

J'ai essayé le code proposé par Raymond à l'adresse suivante mais sans succès.
HTTP://officesystem.access.fre.fr/apidisablex.htm

Je voudrais que le X soit déactiver en tous temps!!!

Merci à l'avance ,
Guy

9 réponses

Avatar
Thierry (ze Titi)
Bonjour Guy !

As-tu un formulaire ouvert en permanence (un menu) ? Dans ce cas, tu
gères l'évènement "Sur fermeture" dudit formulaire afin d'empêcher ce
genre de désagrément.

Message du lundi 20/08/2007

Bonjour à tous,

J'ai développé une petite application comptable. Mon application est en
essai chez quelques clients potentiels en ce moment. Tout cela pour dire
qu'un client voulait fermer un onglet mais par erreur a fermé la BD et que
maintenant les débits et crédits ne balancent plus.

J'ai essayé le code proposé par Raymond à l'adresse suivante mais sans
succès. HTTP://officesystem.access.fre.fr/apidisablex.htm

Je voudrais que le X soit déactiver en tous temps!!!

Merci à l'avance ,
Guy


--
Cordialement,
Thierry

Tout pour réussir avec Access :
http://www.mpfa.info

Avatar
Guy du Lac
Bonjour Thierry,
J'ai mis le code dans mon formulaire menu. Mais ca ne fonctionne toujours
pas. Peut-etre ai-je fait une erreur en l'écrivant mais je ne la vois pas.
Est-ce que tu as une application qui tourne avec ce code en Access 2007 ?

Merci de bien vouloir m'aider.


Option Compare Database
Option Explicit
Dim ancien As Long
Private Declare Function GetSystemMenu Lib "user32" (ByVal hwnd As Long,
ByVal bRevert As Long) As Long
Private Declare Function RemoveMenu Lib "user32" (ByVal hMenu As Long, ByVal
nPosition As Long, ByVal wFlags As Long) As Long
Private Declare Function GetMenuItemCount Lib "user32" (ByVal hMenu As Long)
As Long
Private Declare Function DrawMenuBar Lib "user32" (ByVal hwnd As Long) As Long
Private Const MF_BYPOSITION = &H400&
Private Const MF_REMOVE = &H1000&
Public Function DisableX()
Dim hMenu As Long
Dim nCount As Long
hMenu = GetSystemMenu(Application.hWndAccessApp, 0)
nCount = GetMenuItemCount(hMenu)
Call RemoveMenu(hMenu, nCount - 1, MF_REMOVE Or MF_BYPOSITION)
DrawMenuBar Application.hWndAccessApp
End Function

Private Sub Form_Load()
DisableX
End Sub

--
Merci,
Guy du Lac



Bonjour Guy !

As-tu un formulaire ouvert en permanence (un menu) ? Dans ce cas, tu
gères l'évènement "Sur fermeture" dudit formulaire afin d'empêcher ce
genre de désagrément.

Message du lundi 20/08/2007

Bonjour à tous,

J'ai développé une petite application comptable. Mon application est en
essai chez quelques clients potentiels en ce moment. Tout cela pour dire
qu'un client voulait fermer un onglet mais par erreur a fermé la BD et que
maintenant les débits et crédits ne balancent plus.

J'ai essayé le code proposé par Raymond à l'adresse suivante mais sans
succès. HTTP://officesystem.access.fre.fr/apidisablex.htm

Je voudrais que le X soit déactiver en tous temps!!!

Merci à l'avance ,
Guy


--
Cordialement,
Thierry

Tout pour réussir avec Access :
http://www.mpfa.info






Avatar
Raymond [mvp]
Bonjour.

ça ne peut pas marcher en 2007 car on agit sur la barre de menu d'access qui
n'existe plus.
on va sûrement trouver une solution.
quelle est la raison exacte de la suppression de l'arrêt d'access ? car il
faudra bien qu'on puisse l'arrêter un jour cette application ?

--
@+
Raymond Access MVP http://www.OfficeSystemAccess.com/
http://officesystem.access.over-blog.com/
Pour débuter sur le forum: http://www.mpfa.info/

Cet été, j'en ai rien à coder, je me forme : les devoirs de vacances
http://www.comscamp.com/Tracker/Redirect.ashx?linkidJd96883-a859-4212-b4a0-bce47c8e0d99


"Guy du Lac" a écrit dans le message de
news:
| Bonjour Thierry,
| J'ai mis le code dans mon formulaire menu. Mais ca ne fonctionne toujours
| pas. Peut-etre ai-je fait une erreur en l'écrivant mais je ne la vois pas.
| Est-ce que tu as une application qui tourne avec ce code en Access 2007 ?
|
| Merci de bien vouloir m'aider.
Avatar
Raymond [mvp]
est-ce que ta base est de type 2007 ou est-ce qu'elle est restée en type
2003 ?
si elle est restée en type 2003, ça devrait encore fonctionner, mais à
confirmer.

--
@+
Raymond Access MVP http://www.OfficeSystemAccess.com/
http://officesystem.access.over-blog.com/
Pour débuter sur le forum: http://www.mpfa.info/

Cet été, j'en ai rien à coder, je me forme : les devoirs de vacances
http://www.comscamp.com/Tracker/Redirect.ashx?linkidJd96883-a859-4212-b4a0-bce47c8e0d99


"Guy du Lac" a écrit dans le message de
news:
| Bonjour Thierry,
| J'ai mis le code dans mon formulaire menu. Mais ca ne fonctionne toujours
| pas. Peut-etre ai-je fait une erreur en l'écrivant mais je ne la vois pas.
| Est-ce que tu as une application qui tourne avec ce code en Access 2007 ?
|
| Merci de bien vouloir m'aider.
Avatar
Guy du Lac
Bonjour Raymond,

Premièrement, merci d'avoir répondu.

Dans mon application comptable, le client entre, exemple une facture de
revenu. Chaque ligne entré dans le formulaire correspond à des créditeurs.
Quand il pese sur le bouton "finalise", cela crée automatiquement les
enregistrements pour les taxes et l'enregistrement débiteur (compte à
recevoir). Donc s'il sort sans passer par ce bouton, plus rien ne balance.
--
Merci,
Guy du Lac



Bonjour.

ça ne peut pas marcher en 2007 car on agit sur la barre de menu d'access qui
n'existe plus.
on va sûrement trouver une solution.
quelle est la raison exacte de la suppression de l'arrêt d'access ? car il
faudra bien qu'on puisse l'arrêter un jour cette application ?

--
@+
Raymond Access MVP http://www.OfficeSystemAccess.com/
http://officesystem.access.over-blog.com/
Pour débuter sur le forum: http://www.mpfa.info/

Cet été, j'en ai rien à coder, je me forme : les devoirs de vacances
http://www.comscamp.com/Tracker/Redirect.ashx?linkidJd96883-a859-4212-b4a0-bce47c8e0d99


"Guy du Lac" a écrit dans le message de
news:
| Bonjour Thierry,
| J'ai mis le code dans mon formulaire menu. Mais ca ne fonctionne toujours
| pas. Peut-etre ai-je fait une erreur en l'écrivant mais je ne la vois pas.
| Est-ce que tu as une application qui tourne avec ce code en Access 2007 ?
|
| Merci de bien vouloir m'aider.





Avatar
Guy du Lac
Tel que tu m'as suggéré, je suis maintenant sur Access 2007. Et je trouve
cela fantastique, si peux résoudre ce problème un peu agacant.
--
Merci,
Guy du Lac



est-ce que ta base est de type 2007 ou est-ce qu'elle est restée en type
2003 ?
si elle est restée en type 2003, ça devrait encore fonctionner, mais à
confirmer.

--
@+
Raymond Access MVP http://www.OfficeSystemAccess.com/
http://officesystem.access.over-blog.com/
Pour débuter sur le forum: http://www.mpfa.info/

Cet été, j'en ai rien à coder, je me forme : les devoirs de vacances
http://www.comscamp.com/Tracker/Redirect.ashx?linkidJd96883-a859-4212-b4a0-bce47c8e0d99


"Guy du Lac" a écrit dans le message de
news:
| Bonjour Thierry,
| J'ai mis le code dans mon formulaire menu. Mais ca ne fonctionne toujours
| pas. Peut-etre ai-je fait une erreur en l'écrivant mais je ne la vois pas.
| Est-ce que tu as une application qui tourne avec ce code en Access 2007 ?
|
| Merci de bien vouloir m'aider.





Avatar
Raymond [mvp]
ce que tu peux faire pour l'instant:

Private Sub Form_Unload(Cancel As Integer)
Dim Réponse As Double
Réponse = CalculerLaBalance
If Réponse <> 0 Then
MsgBox "Vous ne pouvez pas fermer ce formulaire tant que vous n'avez pas
terminé", .....
Cancel = True
End If
End Sub

la fonction CalculerLaBalance va renvoyer la somme des débits - la somme des
crédits et si <>0 , la fermeture du formulaire est refusée. tant que le
formulaire n'est ps fermé, access reste ouvert.
--
@+
Raymond Access MVP http://www.OfficeSystemAccess.com/
http://officesystem.access.over-blog.com/
Pour débuter sur le forum: http://www.mpfa.info/

Cet été, j'en ai rien à coder, je me forme : les devoirs de vacances
http://www.comscamp.com/Tracker/Redirect.ashx?linkidJd96883-a859-4212-b4a0-bce47c8e0d99


"Guy du Lac" a écrit dans le message de
news:
| Bonjour Raymond,
|
| Premièrement, merci d'avoir répondu.
|
| Dans mon application comptable, le client entre, exemple une facture de
| revenu. Chaque ligne entré dans le formulaire correspond à des créditeurs.
| Quand il pese sur le bouton "finalise", cela crée automatiquement les
| enregistrements pour les taxes et l'enregistrement débiteur (compte à
| recevoir). Donc s'il sort sans passer par ce bouton, plus rien ne balance.
| --
| Merci,
| Guy du Lac
Avatar
Raymond [mvp]
tu trouveras quelques pages sur la personnalisation du ruban sur le site,
c'est intéressant et ça vaut le coup de se pencher dessus.

--
@+
Raymond Access MVP http://www.OfficeSystemAccess.com/
http://officesystem.access.over-blog.com/
Pour débuter sur le forum: http://www.mpfa.info/

Cet été, j'en ai rien à coder, je me forme : les devoirs de vacances
http://www.comscamp.com/Tracker/Redirect.ashx?linkidJd96883-a859-4212-b4a0-bce47c8e0d99


"Guy du Lac" a écrit dans le message de
news:
| Tel que tu m'as suggéré, je suis maintenant sur Access 2007. Et je trouve
| cela fantastique, si peux résoudre ce problème un peu agacant.
| --
| Merci,
| Guy du Lac
|
Avatar
Guy du Lac
Raymond,

En faisant des recherches pour régler la déactivation du X en Access 2007,
je suis tombé sur ce mail que tu m'avais répondu. Faut croire que j'ai été
plus intelligent puisque j'ai mis en pratique ce que tu disais et en
fignolant un peu je controle maintenant la déactivation de partout dans mon
logiciel.

Encore Merci,
--
Merci,
Guy du Lac



ce que tu peux faire pour l'instant:

Private Sub Form_Unload(Cancel As Integer)
Dim Réponse As Double
Réponse = CalculerLaBalance
If Réponse <> 0 Then
MsgBox "Vous ne pouvez pas fermer ce formulaire tant que vous n'avez pas
terminé", .....
Cancel = True
End If
End Sub

la fonction CalculerLaBalance va renvoyer la somme des débits - la somme des
crédits et si <>0 , la fermeture du formulaire est refusée. tant que le
formulaire n'est ps fermé, access reste ouvert.
--
@+
Raymond Access MVP http://www.OfficeSystemAccess.com/
http://officesystem.access.over-blog.com/
Pour débuter sur le forum: http://www.mpfa.info/

Cet été, j'en ai rien à coder, je me forme : les devoirs de vacances
http://www.comscamp.com/Tracker/Redirect.ashx?linkidJd96883-a859-4212-b4a0-bce47c8e0d99


"Guy du Lac" a écrit dans le message de
news:
| Bonjour Raymond,
|
| Premièrement, merci d'avoir répondu.
|
| Dans mon application comptable, le client entre, exemple une facture de
| revenu. Chaque ligne entré dans le formulaire correspond à des créditeurs.
| Quand il pese sur le bouton "finalise", cela crée automatiquement les
| enregistrements pour les taxes et l'enregistrement débiteur (compte à
| recevoir). Donc s'il sort sans passer par ce bouton, plus rien ne balance.
| --
| Merci,
| Guy du Lac