Posez votre question Signaler

[excel/vba] protection d'une feuille [Résolu]

antic80 4884Messages postés 30 mai 2005Date d'inscription - Dernière réponse le 12 mai 2010 à 16:12
Bonjour,
j'ai fait un petit programme afin de gérer des données.
Etant donné que ce programme va etre consulté par plusieurs personnes j'aimerais protéger la feuille contenant les données par un mot de passe.
Ce mot de passe ne seras transmis qu'a quelques personnes afin qu'elles puissent saisir de nouvelles données.
J'aimerais donc faire une macro qui demanderais le mot de passe et quand on quitte excel il faudrait que la protection se remette automatiquement.
merci pour vos suggestions et vos réponses
Lire la suite 

[excel/vba] protection d'une feuille »

5 réponses
Réponse
+3
moins plus
Salut,

Crée un module macro clic droit sur l'onglet de ta feuille/visualiser le code/ insertion/module dans ce module colles ce code

Dans cet exemple le mot de passe est titi et doit être changé suivant tes besoins dans la ligne
If textetitre = "titi" Then


Sub Déprotection()
textetitre = InputBox(Title:="Bonjour", _
Prompt:="Veuillez Saisir le code d'accès.")
If textetitre = "titi" Then
Worksheets(1).Unprotect Password:="titi"
Else
msg = "Mot de passe incorrect."
StyleBoîteDialogue = vbOKOnly + vbQuestion
Title = "Accès réglementé."
réponse = MsgBox(msg, StyleBoîteDialogue, Title)
Exit Sub
End If
End Sub

Sur ta feuille de calcul crée un bouton associé à cette macro pour déprotéger ta feuille.

Ensuite pour que ta feuille se protège automatiquement à la fermeture de ton fichier
Clic droit sur l’onglet de feuille, double clic sur thisworkbook une feuille blanche s’ouvre, colle le code ci-dessous. Attention si tu change le mot de passe « titi à la déprotection, il faut également le changer à la protection, et n’oublis pas de mettre to mot de passe entre :""

Private Sub Workbook_BeforeClose(Cancel As Boolean)
Worksheets(1).Protect Password:="titi"
End Sub

Et pour terminer afin que personne que toi n'accède au module macro et donc découvrir ou changer le mot de passe il convient de protéger le module VBA par un mot de passe. Mais attention de ne pas multiplier les mots des passes afin de ne pas les oublier, bien qu’il existe des logiciels de déprotection.

A+
antic80- 29 oct. 2008 à 17:09
merci infiniment pour cette réponse Mike-31

clair et précis, parfait pour moi
Ajouter un commentaire
Réponse
+0
moins plus
N'oublis pas de mettre ton statut en résolu

Merci

A+
Ajouter un commentaire
Réponse
+0
moins plus
salut
j'ai suivi tout ce que t'a dit mais en fin quand j'ouvre le fichier je trouve que la feuille n'est pas proteger, on peut faire des modification dans cette feuille, malgré que la macro s'execute normal apartir de sont bouton.

merci pour tout
Ajouter un commentaire
Réponse
+0
moins plus
Salut,

Tu aurais du ouvrir ta propre discussion et expliquer ton problème.
Cette discussion à été ouverte par Antic80 et son statut est résolu.

Enfin, le code que j'ai donné dans ce topic consistait à contrôler les personnes autorisées à apporter des modifications sur une feuille d'un classeur. pour cela il faut coller ce code dans un module

Sub Déprotection()
textetitre = InputBox(Title:="Bonjour", _
Prompt:="Veuillez Saisir le code d'accès.")
If textetitre = "titi" Then
Worksheets(1).Unprotect Password:="titi"
Else
msg = "Mot de passe incorrect."
StyleBoîteDialogue = vbOKOnly + vbQuestion
Title = "Accès réglementé."
réponse = MsgBox(msg, StyleBoîteDialogue, Title)
Exit Sub
End If
End Sub

et celui ci dans la Thisworkbook

Private Sub Workbook_BeforeClose(Cancel As Boolean)
Worksheets(1).Protect Password:="titi"
End Sub

le mot de passe pour accéder aux modifications de la feuille est titi.
Pour appliquer ce code à plusieurs feuilles ou une feuille différente que la feuille 1 il faut revoir le code
Ajouter un commentaire
Ce document intitulé « [excel/vba] protection d'une feuille » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
Passage au tout numérique : quel coût pour les particuliers ?