Hello MFerrand
J'espère que tu n'as pas fait fuir le client ... sur le principe tu as raison, la réponse est proportionnelle à la question.
Ici je me suis pris au jeu d'utiliser le clic sur l'onglet comme demandé, c'est original.
Pour labartho , voici l'idée :
1- Créer une feuille sans les données qui est le clone de la feuille à protéger
- - même nom en ajoutant un espace à la fin
- - contenu neutre : on peut reproduire la même structure sans les données, mettre tout à blanc, mettre un message ...
2- créer le code VBA
-- sur la feuille clonée, avec le mot de passe choisi, cela permettra d'ouvrir la feuille protégée "à la place" de la feuille clonée qui est fermée
Private Sub Worksheet_Activate()
mdp = InputBox("Merci de saisir votre mot de passe ...", "Mot de Passe")
If mdp <> "abracadabra" Then
Sheets("accueil").Select
Else
Sheets("privé").Visible = True
Sheets("privé").Select
Sheets("privé ").Visible = False
End If
End Sub
-- sur le workbook, ce qui aura pour effet à la fermeture de rendre invisible la feuille protégée par xlVeryHidden
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Sheets("accueil").Select
Sheets("privé ").Visible = True
Sheets("privé").Visible = xlVeryHidden
ActiveWorkbook.Close True
End Sub
3- verrouiller le code VBA par mot de passe