isamancal
Messages postés2Date d'inscriptionjeudi 4 septembre 2003StatutMembreDernière intervention17 septembre 2003
-
13 sept. 2003 à 10:38
celiphane
Messages postés466Date d'inscriptionsamedi 16 février 2002StatutMembreDernière intervention20 avril 2007
-
14 sept. 2003 à 00:48
Sub Auto_Open()
'
' Auto_Open Macro
' Macro enregistrée le 19/04/2002 par LEFEVRE.PASCAL
Dim i As Integer
With CommandBars("worksheet menu bar").Controls
For i = 1 To .Count .Item(i).Visible .Item(i).Caption "P.LEFE&VRE"
Next i
End With
Application.DisplayFullScreen = True
End Sub
__________________________________________________________
Sub Auto_Close()
'
' Auto_Close Macro
' Macro enregistrée le 19/04/2002 par LEFEVRE.PASCAL
Dim i As Integer
With CommandBars("worksheet menu bar").Controls
For i = 1 To .Count
.Item(i).Visible = .Item(i).Caption <> "P.LEFE&VRE"
Next i
End With
Application.DisplayFullScreen = False
End Sub
Voici les deux macro pour faire apparaitre et disparaitre la barre de menu d'excel.
j'aimerais trouver du code pour rendre inactive la croix de fermeture et obliger les utilisateurs de mon logiciel à quitter l'application par un bouton "Quitter"
Merci
cs_PROGRAMMIX
Messages postés1133Date d'inscriptionmercredi 2 octobre 2002StatutMembreDernière intervention24 juillet 20112 13 sept. 2003 à 14:20
Je ne connais pas le truc pour rendre inactif la croix de fermeture...
Par contre, il me semble qu'il existe un évènement qui s'exécute juste avant la fermeture de la fenêtre. Si tel est le cas, il te suffirait de mettre la procédure de renvois vers le code de ton bouton "Quitter"...
cs_PROGRAMMIX
Messages postés1133Date d'inscriptionmercredi 2 octobre 2002StatutMembreDernière intervention24 juillet 20112 13 sept. 2003 à 14:29
Voilà dans le cas d'un classeur, voici le code...
Private Sub Workbook_BeforeClose(Cancel As Boolean)
If MsgBox("Etes-vous certain de vouloir quitter ?", vbYesNo) = vbNo Then
Cancel = True
Exit Sub
End If
End Sub
En mettant "Cancel = True", on annule la procédure de fermeture.
Cette procédure fonctionne également si on clique sur la croix d'Excel dans la mesure où Excel cherchera à fermer le classeur contenant la procédure ci-dessus avant de se décharger.
celiphane
Messages postés466Date d'inscriptionsamedi 16 février 2002StatutMembreDernière intervention20 avril 2007 14 sept. 2003 à 00:48
La bonne solution est bien celle donnée par PROGRAMMIX, cependant l'usage courant est le suivant :
on déclare en public une variable booléenne, exemple FlagFin,
et dans l'évènement beforeclose,
on inscrit : Cancel = Not FlagFin
Ainsi, le programme ne se fermera que lorsque tu le décides, par exemple dans ton bouton quitter, où avec le reste de ton code il suffit de placer la ligne "FlagFin = True" juste avant ton instruction de fermeture.
C'est la méthode universelle pour Excel.
@+
Celi-phane (...ne-Sté...),
elle tricote, lui développe... ;)