Krzys, welcome to the forum.
This might serve as a template for calling your routine. This belongs in the ThisWorkbook code module.
Private Sub Workbook_BeforeClose(Cancel As Boolean)
With ThisWorkbook.Sheets("Sheet2"): Rem adjust sheet name
If .Visible Then
Select Case MsgBox("Hide Sheet2?", vbYesNoCancel)
Case vbCancel
Cancel = True
Case vbYes
.Visible = xlSheetHidden
End Select
End If
End With
End Sub
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
With ThisWorkbook.Sheets("Sheet2"): Rem adjust sheet name
If .Visible And SaveAsUI Then
Select Case MsgBox("Hide Sheet2?", vbYesNoCancel)
Case vbCancel
Cancel = True
Case vbYes
.Visible = xlSheetHidden
End Select
End If
End With
End Sub
Bookmarks