Private Sub Workbook_Open()
Dim Sh As Object
Application.ScreenUpdating = False
With Sheets("Menu")
.Visible = xlSheetVisible 'au cas où...
Application.Goto .[A1], True 'cadrage
.[C4].Select
For Each Sh In Me.Sheets
If Sh.Name <> .Name Then Sh.Visible = xlSheetHidden
Next
End With
End Sub
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
If Sh.Name <> "Menu" Then Exit Sub
If Intersect(Target, Sh.[C4]) Is Nothing Then Exit Sub
Workbook_Open 'RAZ
On Error Resume Next 'si la feuille n'existe pas
With Sheets(CStr(Sh.[C4]))
.Visible = xlSheetVisible
Application.Goto .[A1]
End With
End Sub
Sub Menu() 'affectée aux boutons
Workbook_Open 'RAZ
End Sub