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

Fermeture userform

1 réponse
Avatar
bob1877
Bonjour,
Je voudrai empêcher quiconque de fermer mon userform par la croix rouge à part moi. 

Pour cela je voudrai soit demander un mot de passe lorsque l'on clique sur cette croix rouge, soit passer par un bouton de commande qui serait invisible et caché dans mon userform. 

Ou encore un petit bout de code genre 
     Unload UserForm
Lorsque qu'un code est rentré dans un textbox. 

Une idée ?
Merci d'avance. 
    

1 réponse

Avatar
isabelle
bonjour bob,

il ne faut pas oublier de mettre un bouton CommandButton1 sur le UserForm pour fermer celui-ci
http://cjoint.com/?0bobKp7kqFp

Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Private Declare Function GetWindowLong Lib "user32" Alias "GetWindowLongA" (ByVal hWnd As Long, ByVal nIndex As Long) As Long
Private Declare Function SetWindowLong Lib "user32" Alias "SetWindowLongA" (ByVal hWnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long
Const WS_SYSMENU = &H80000
Const GWL_STYLE = (-16)

Sub HideCloseButton(oUsrFrm As Object)
Dim hWnd As Long
Dim lStyle As Long
hWnd = FindWindow("ThunderDFrame", oUsrFrm.Caption) 'UserForm
lStyle = GetWindowLong(hWnd, GWL_STYLE)
SetWindowLong hWnd, GWL_STYLE, lStyle And Not WS_SYSMENU
End Sub

Private Sub UserForm_Initialize()
HideCloseButton Me
End Sub

Private Sub CommandButton1_Click()
Unload Me
End Sub

isabelle

Le 2011-01-13 19:13, bob1877 a écrit :
Bonjour,
Je voudrai empêcher quiconque de fermer mon userform par la croix rouge à part
moi.

Pour cela je voudrai soit demander un mot de passe lorsque l'on clique sur
cette croix rouge, soit passer par un bouton de commande qui serait invisible et
caché dans mon userform.

Ou encore un petit bout de code genre
Unload UserForm
Lorsque qu'un code est rentré dans un textbox.

Une idée ?
Merci d'avance.