Private Sub Workbook_BeforeClose(Cancel As Boolean)
'cache la feuille à nouveau puis enregistre sans rien demander à l'utilisateur
'sinon l'utilisateur enregistre le fichier avec la feuille visible
'et il peut utiliser la feuille avec les macros désactivées ==> plus de protection
Dim wks As Worksheet
Set wks = ThisWorkbook.Worksheets(2)
wks.Visible = xlSheetVeryHidden
Set wks = Nothing
ThisWorkbook.Save
End Sub
Private Sub Workbook_BeforePrint(Cancel As Boolean)
'intercepte la demande d'impression, la bloque et affiche un message
Cancel = True
MsgBox "Document à ne pas imprimer et à ne pas diffuser"
End Sub
Private Sub Workbook_Open()
'a l'ouverture rend la feuille visible puis met le focus dessus
'comme ça si classeur ouvert sans macros activées ==> feuille invisible
Dim wks As Worksheet
Set wks = ThisWorkbook.Worksheets(2)
wks.Visible = xlSheetVisible
wks.Activate
Set wks = Nothing
End Sub