désactiver croix de fermeture

L

Luke

Guest
Bonjour,

comment désactiver la croix de fermeture en haut à droite d'un USF, pour obliger les utilisateurs à utiliser le bouton fermeture ?

merci

Luke
 
D

Denis

Guest
Bonjour Luke et le Forum
mets ceci dans le code de ton userform en haut :

Private Declare Function GetWindowLongA Lib "User32" _
(ByVal hWnd As Long, ByVal nIndex As Long) As Long

Private Declare Function SetWindowLongA Lib "User32" _
(ByVal hWnd As Long, ByVal nIndex As Long, _
ByVal dwNewLong As Long) As Long

Private Declare Function FindWindowA Lib "User32" _
(ByVal lpClassName As String, ByVal lpWindowName As String) As Long

puis dans l'initialisation tu ajoutes ceci
Private Sub UserForm_Initialize()
Dim hWnd As Long
hWnd = FindWindowA("Thunder" & IIf(Application.Version Like "8*", _
"X", "D") & "Frame", Me.Caption)
SetWindowLongA hWnd, -16, GetWindowLongA(hWnd, -16) And &HFFF7FFFF
etc ......

End Sub

et normalement sauf erreur de frappe, ça marche
bon courage et @+
Denis
 
B

Billcodbar

Guest
Pourquoi ?
Tu peux dans le thisworkbook une macro qui se lance à la fermeture
et ainsi les utilisateurs pourront fermer avec la croix et lanceront quand même la macro que tu veux exécuter.

Dans Thisworkbook

Private Sub Workbook_BeforeClose(Cancel As Boolean)

End Sub
 
V

Vériland

Guest
Bonjour ce fil et toi le forum,

Houlà...c'est un sacré code que tu nous proposes Denis pour empêcher la fermeture de l'userform par la croix...
smiley_172.gif


Bon ben avant que Ti ne passe par là...lol...ceci fera l'affaire...

Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)
If CloseMode = 0 Then Cancel = True
End Sub


à placer dans le code de l'userform...

Par contre je conseille FORTEMENT, d'y inclure un bouton "Sortie", (Unload Me),auquel cas cet Userform risque d'être affiché pour toujours...pas glop !

smiley_165.gif
A+Veriland.gif


PS : Macro à copier depuis le forum auquel cas tu risques d'avoir les attributs gras du post dedans...
 

Discussions similaires

Réponses
1
Affichages
314

Statistiques des forums

Discussions
312 970
Messages
2 094 044
Membres
105 926
dernier inscrit
Odyssea