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

fermeture controlée d'excel

5 réponses
Avatar
Pascal ETIENNE
Salut le Forum, Hy!

SVP,
j'ai une macro commandée par un bouton, qui ferme mon fichier de travail
selon un protocole précis, en enregistrant les fichiers non sauvegardés, en
fermant bien proprement les barres d'outils adéquates.

y-a-t-il moyen de désactiver la croix de fermeture d'excel et des fichiers
en haut a droite des fenètres, pour empècher l'utilisateur de fermer excel
par reflexe, et ainsi l'obliger a fermer avec mon super-bouton

pascal l'emmerdeur
Merci beaucoup.

5 réponses

Avatar
RGI
Bonjour

sur ce forum il y a qq temps

'Déclaration des API dans le haut du module standard.
Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" _
(ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Private Declare Function DeleteMenu Lib "user32" (ByVal hMenu As Long, _
ByVal nPosition As Long, ByVal wFlags As Long) As Long
Private Declare Function EnableWindow Lib "user32" (ByVal hWnd As Long, _
ByVal fEnable As Long) As Long
Private Declare Function DrawMenuBar Lib "user32" (ByVal hWnd As Long) _
As Long
Private Declare Function GetSystemMenu Lib "user32" (ByVal hWnd As Long, _
ByVal bRevert As Long) As Long
Private Const SC_CLOSE As Long = &HF060


Sub Desactive_Bouton_Fermerture_Excel()

Dim myhWnd As Long, hMenu As Long

'Supprime la petite croix
myhWnd = FindWindow("XLMAIN", Application.Caption)
hMenu = GetSystemMenu(myhWnd, 0)
DeleteMenu hMenu, SC_CLOSE, 0&
DrawMenuBar myhWnd

'désactive la commande "quitter" du menu Fichier
Application.CommandBars("Worksheet Menu Bar") _
.Controls("&Fichier").Controls("&Quitter").Enabled = False

End Sub

Sub active_Bouton_Fermerture_Excel()

Dim myhWnd As Long, hMenu As Long

'Remet la petite croix
myhWnd = FindWindow("XLMAIN", Application.Caption)
hMenu = GetSystemMenu(myhWnd, 1)
DrawMenuBar myhWnd

'active la commande "quitter" du menu Fichier
Application.CommandBars("Worksheet Menu Bar") _
.Controls("&Fichier").Controls("&Quitter").Enabled = True
End Sub



salutations

RGI
"Pascal ETIENNE" a écrit dans le message
de news: %
Salut le Forum, Hy!

SVP,
j'ai une macro commandée par un bouton, qui ferme mon fichier de travail
selon un protocole précis, en enregistrant les fichiers non sauvegardés,
en
fermant bien proprement les barres d'outils adéquates.

y-a-t-il moyen de désactiver la croix de fermeture d'excel et des fichiers
en haut a droite des fenètres, pour empècher l'utilisateur de fermer excel
par reflexe, et ainsi l'obliger a fermer avec mon super-bouton

pascal l'emmerdeur
Merci beaucoup.




Avatar
RGI
ajouter le bouton fermer

'désactive la commande "Fermer" du menu Fichier
Application.CommandBars("Worksheet Menu Bar") _
.Controls("&Fichier").Controls("&Fermer").Enabled = False

'active la commande "Fermer" du menu Fichier
Application.CommandBars("Worksheet Menu Bar") _
.Controls("&Fichier").Controls("&Fermer").Enabled = True



salutations

RGI


"RGI" <nospam: a écrit dans le message de news:
43f1b02c$0$20161$
Bonjour

sur ce forum il y a qq temps

'Déclaration des API dans le haut du module standard.
Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" _
(ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Private Declare Function DeleteMenu Lib "user32" (ByVal hMenu As Long, _
ByVal nPosition As Long, ByVal wFlags As Long) As Long
Private Declare Function EnableWindow Lib "user32" (ByVal hWnd As Long, _
ByVal fEnable As Long) As Long
Private Declare Function DrawMenuBar Lib "user32" (ByVal hWnd As Long) _
As Long
Private Declare Function GetSystemMenu Lib "user32" (ByVal hWnd As Long, _
ByVal bRevert As Long) As Long
Private Const SC_CLOSE As Long = &HF060


Sub Desactive_Bouton_Fermerture_Excel()

Dim myhWnd As Long, hMenu As Long

'Supprime la petite croix
myhWnd = FindWindow("XLMAIN", Application.Caption)
hMenu = GetSystemMenu(myhWnd, 0)
DeleteMenu hMenu, SC_CLOSE, 0&
DrawMenuBar myhWnd

'désactive la commande "quitter" du menu Fichier
Application.CommandBars("Worksheet Menu Bar") _
.Controls("&Fichier").Controls("&Quitter").Enabled = False

End Sub

Sub active_Bouton_Fermerture_Excel()

Dim myhWnd As Long, hMenu As Long

'Remet la petite croix
myhWnd = FindWindow("XLMAIN", Application.Caption)
hMenu = GetSystemMenu(myhWnd, 1)
DrawMenuBar myhWnd

'active la commande "quitter" du menu Fichier
Application.CommandBars("Worksheet Menu Bar") _
.Controls("&Fichier").Controls("&Quitter").Enabled = True
End Sub



salutations

RGI
"Pascal ETIENNE" a écrit dans le
message de news: %
Salut le Forum, Hy!

SVP,
j'ai une macro commandée par un bouton, qui ferme mon fichier de travail
selon un protocole précis, en enregistrant les fichiers non sauvegardés,
en
fermant bien proprement les barres d'outils adéquates.

y-a-t-il moyen de désactiver la croix de fermeture d'excel et des
fichiers
en haut a droite des fenètres, pour empècher l'utilisateur de fermer
excel
par reflexe, et ainsi l'obliger a fermer avec mon super-bouton

pascal l'emmerdeur
Merci beaucoup.








Avatar
blutch
Salut Pascal,

pour désactiver les icones "réduire restaurer fermer" d'excel tu peux
consulter la solution ici :
http://www.excelabo.net/xl/protection.php#desactiver3icones

en ce qui concerne les mêmes boutons mais de la feuille de calcul
cette fois ici tu peux essayer cela : ActiveWorkbook.Protect
Structure:úlse, Windows:=True or ActiveWorkbook.Protect
Structure:úlse, Windows:úlse.

Bonne chance et à bientôt
Blutch


Salut le Forum, Hy!

SVP,
j'ai une macro commandée par un bouton, qui ferme mon fichier de travail
selon un protocole précis, en enregistrant les fichiers non sauvegard és, en
fermant bien proprement les barres d'outils adéquates.

y-a-t-il moyen de désactiver la croix de fermeture d'excel et des fichi ers
en haut a droite des fenètres, pour empècher l'utilisateur de fermer excel
par reflexe, et ainsi l'obliger a fermer avec mon super-bouton

pascal l'emmerdeur
Merci beaucoup.


Avatar
Pascal ETIENNE
Merci beaucoup pour tes lumieres.
Pascal



"RGI" <nospam: a écrit dans le message de
news:43f1b230$0$21272$
ajouter le bouton fermer

'désactive la commande "Fermer" du menu Fichier
Application.CommandBars("Worksheet Menu Bar") _
.Controls("&Fichier").Controls("&Fermer").Enabled = False

'active la commande "Fermer" du menu Fichier
Application.CommandBars("Worksheet Menu Bar") _
.Controls("&Fichier").Controls("&Fermer").Enabled = True



salutations

RGI


"RGI" <nospam: a écrit dans le message de news:
43f1b02c$0$20161$
Bonjour

sur ce forum il y a qq temps

'Déclaration des API dans le haut du module standard.
Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" _
(ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Private Declare Function DeleteMenu Lib "user32" (ByVal hMenu As Long, _
ByVal nPosition As Long, ByVal wFlags As Long) As Long
Private Declare Function EnableWindow Lib "user32" (ByVal hWnd As Long,
_


ByVal fEnable As Long) As Long
Private Declare Function DrawMenuBar Lib "user32" (ByVal hWnd As Long) _
As Long
Private Declare Function GetSystemMenu Lib "user32" (ByVal hWnd As Long,
_


ByVal bRevert As Long) As Long
Private Const SC_CLOSE As Long = &HF060


Sub Desactive_Bouton_Fermerture_Excel()

Dim myhWnd As Long, hMenu As Long

'Supprime la petite croix
myhWnd = FindWindow("XLMAIN", Application.Caption)
hMenu = GetSystemMenu(myhWnd, 0)
DeleteMenu hMenu, SC_CLOSE, 0&
DrawMenuBar myhWnd

'désactive la commande "quitter" du menu Fichier
Application.CommandBars("Worksheet Menu Bar") _
.Controls("&Fichier").Controls("&Quitter").Enabled = False

End Sub

Sub active_Bouton_Fermerture_Excel()

Dim myhWnd As Long, hMenu As Long

'Remet la petite croix
myhWnd = FindWindow("XLMAIN", Application.Caption)
hMenu = GetSystemMenu(myhWnd, 1)
DrawMenuBar myhWnd

'active la commande "quitter" du menu Fichier
Application.CommandBars("Worksheet Menu Bar") _
.Controls("&Fichier").Controls("&Quitter").Enabled = True
End Sub



salutations

RGI
"Pascal ETIENNE" a écrit dans le
message de news: %
Salut le Forum, Hy!

SVP,
j'ai une macro commandée par un bouton, qui ferme mon fichier de
travail



selon un protocole précis, en enregistrant les fichiers non
sauvegardés,



en
fermant bien proprement les barres d'outils adéquates.

y-a-t-il moyen de désactiver la croix de fermeture d'excel et des
fichiers
en haut a droite des fenètres, pour empècher l'utilisateur de fermer
excel
par reflexe, et ainsi l'obliger a fermer avec mon super-bouton

pascal l'emmerdeur
Merci beaucoup.












Avatar
Pascal ETIENNE
Merci pour ton aide et a bientot
Pascal


"blutch" a écrit dans le message de
news:
Salut Pascal,

pour désactiver les icones "réduire restaurer fermer" d'excel tu peux
consulter la solution ici :
http://www.excelabo.net/xl/protection.php#desactiver3icones

en ce qui concerne les mêmes boutons mais de la feuille de calcul
cette fois ici tu peux essayer cela : ActiveWorkbook.Protect
Structure:úlse, Windows:=True or ActiveWorkbook.Protect
Structure:úlse, Windows:úlse.

Bonne chance et à bientôt
Blutch


Salut le Forum, Hy!

SVP,
j'ai une macro commandée par un bouton, qui ferme mon fichier de travail
selon un protocole précis, en enregistrant les fichiers non sauvegardés,
en

fermant bien proprement les barres d'outils adéquates.

y-a-t-il moyen de désactiver la croix de fermeture d'excel et des fichiers
en haut a droite des fenètres, pour empècher l'utilisateur de fermer excel
par reflexe, et ainsi l'obliger a fermer avec mon super-bouton

pascal l'emmerdeur
Merci beaucoup.