Re
Créé un module et met ceci. Cette macro est affectée au smiley.
Sub ouverture()
UserForm1.Show
End Sub
Fait une USF :
Un label1 en y mettant: "Veuillez saisir votre mot de passe"
Un textbox1. Il faut que tu affiche "Fenêtre et propriétés". Dans "Password Char", met ceci: * (un astérisque)
Un command button "Valider"
Mettre ce code dans le bouton valider:
Private Sub CommandButton1_Click()
Dim i As Integer
If TextBox1 = "toto" Then
For i = 2 To Sheets.Count
Sheets(i).Visible = True
Unload Me
Next i
MsgBox "Merci. Les feuilles 2 à " & i - 1 & "sont dorénavant visibles.", , "Pass-Pass dit:"
Else:
MsgBox "Le mot de passe est incorrect. Veuillez réessayer", , "Pass-Pass dit:"
TextBox1.Value = ""
End If
End Sub
Ensuite, dans ThisWorkbook, il faut mettre ceci:
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Dim i As Integer
For i = 2 To Sheets.Count
Sheets(i).Visible = 2
Next i
End Sub
Comme cela, toutes les feuilles ne sont plus visibles dès lors que tu as enregistré ton fichier