Code d'accès sur chaque feuille Excel

Signaler
-
 Aurore -
Bonjour,

Dans mon fichier Excel qui représente le calendrier 2021 des heures travaillées des salariés, j’ai une feuille par professionnel afin de faire la synthèse mois par mois.
Chaque feuille est nominative.
Je souhaite que les professionnels ne voient pas les feuilles des autres collègues et que la feuille s’ouvre avec un code.(Et que toutes les feuilles s’ouvrent avec un autre code pour la responsable)
J’ai vu une macro qui me permettait de mettre ce système en place mais impossible de l’appliquer.
Avez vous une idée pour m’aider?

https://mon-partage.fr/f/Jw6p8Ogj/

Configuration: Windows / Edge 85.0.564.51

4 réponses

Messages postés
15335
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
16 septembre 2020
1 353
Bonjour,

J’ai vu une macro qui me permettait de mettre ce système en place
Ben oui, elle est ou?

Suite:
Pas Grave, regardez ici, vous avez ce qu'il vous faut:
https://www.commentcamarche.net/faq/37104-vba-excel-mot-de-passe-et-utilisateurs
Messages postés
955
Date d'inscription
samedi 2 février 2019
Statut
Membre
Dernière intervention
16 septembre 2020
99
Re,

voici un premier fichier, à tester.

Le mot de passe est MDP

https://mon-partage.fr/f/9xKFFku3/
Quand je teste, j'ai un message d'alerte: "erreur d'exécution 9" et me propose un Débogage mais ca ne fonctionne pas quand même.
Messages postés
955
Date d'inscription
samedi 2 février 2019
Statut
Membre
Dernière intervention
16 septembre 2020
99
à quel moment il y a une erreur ?

Alt+F11 pour ouvrir l'éditeur ou clic droit sur l'onglet accueil et "visualiser le code"
Quand je tape mon mon de passe, j'ai la page Visual Basic qui s'ouvre avec le message d'erreur.
J'appuie sur Débogage et "Sheets("Salarié 1").Visible = True" se met en jaune et ainsi de suite.
Messages postés
955
Date d'inscription
samedi 2 février 2019
Statut
Membre
Dernière intervention
16 septembre 2020
99 > Aurore
Tu as renommé les onglets ?!
Non, j'ai testé ton fichier.
J'ai rencontré le même problème hier en essayant une autre macro:

Private Sub Workbook_Open()

'Déclaration des variables
Dim i As Integer
Dim MonPassword As Variant

'Afficher la feuille calendrier dès l'ouverture du classeur
Worksheets("calendrier").Activate

'On va faire une boucle permettant de masquer toutes les autres feuilles
For i = 1 To Sheets.Count - 1
Sheets("User " & i).Visible = False
Next i

'On va récupérer le code ou mot de passedans une boite de type InputBox
MonPassword = InputBox("Veuillez entrer votre mot de passe pour accéder à votre feuille :", "Identification")

'On va réaliser les différents test

If MonPassword = "1234" Then

Sheets("User 1").Visible = True
Worksheets("User 1").Select
Range("A1").Select

End If

If MonPassword = "3820" Then

Sheets("User 2").Visible = True
Worksheets("User 2").Select
Range("A1").Select

End If

'Ouvrir toutes feuilles si mot de passe administrateur
If MonPassword = "2812" Then

For i = 1 To Sheets.Count
Sheets("User " & i).Visible = True
Next i

End If

End Sub

Y'a sans doute quelque chose que je ne fais pas bien

PS: j'avais bien nommé mes feuilles comme ci dessus
Messages postés
955
Date d'inscription
samedi 2 février 2019
Statut
Membre
Dernière intervention
16 septembre 2020
99
Cela vient peut-être de ta version Office.

Quel est ton type d'Excel ?
>
Messages postés
955
Date d'inscription
samedi 2 février 2019
Statut
Membre
Dernière intervention
16 septembre 2020

Excel 2016

Ca peut être ca le problème?
Messages postés
955
Date d'inscription
samedi 2 février 2019
Statut
Membre
Dernière intervention
16 septembre 2020
99 > Aurore
Le fichier que tu as partagé tout à l'heure était en .xls (version antérieur d'Excel)

Je suis moi-même sur Office 2016 et aucun bug !
>
Messages postés
955
Date d'inscription
samedi 2 février 2019
Statut
Membre
Dernière intervention
16 septembre 2020

Je vais essayer sur un autre ordinateur et te tiens au courant.

Un grand merci pour ta patience