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.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
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.
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.
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.