Protection feuille sous Excel
transalp31
-
G.David -
G.David -
Bonjour,
J'uitlise ce code afin de mettre en evidence la ligne de la cellule active dans excel 2007 :
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Cells.Interior.ColorIndex = XlNone
With ActiveCell
.EntireRow.Interior.ColorIndex = 27
End With
End Sub
Cela fonctionne bien mais depuis son application, je ne peux plus protéger la feuille de calcul.
Lorsque je mets une protection, j'ai un message d'erreur du type :
"Erreur d'exécution 1004"
Le débogeur me mets en surbrillance cette ligne :
Cells.Interior.ColorIndex = xlNone
Est ce que quelqu'un peut m'aider... helppppppp
Stéphane;
J'uitlise ce code afin de mettre en evidence la ligne de la cellule active dans excel 2007 :
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Cells.Interior.ColorIndex = XlNone
With ActiveCell
.EntireRow.Interior.ColorIndex = 27
End With
End Sub
Cela fonctionne bien mais depuis son application, je ne peux plus protéger la feuille de calcul.
Lorsque je mets une protection, j'ai un message d'erreur du type :
"Erreur d'exécution 1004"
Le débogeur me mets en surbrillance cette ligne :
Cells.Interior.ColorIndex = xlNone
Est ce que quelqu'un peut m'aider... helppppppp
Stéphane;
Configuration: Windows Vista Internet Explorer 7.0 Excel 2007
3 réponses
-
sous 2000 et 2003
pour protégerWorksheets("feuil1").Protect password = "MdP"
à ce moment la feuille ne peut plus etre modifier (y compris par macro
pour déprotegerWorksheets("feuil1").Unprotect password = "MdP"
la feuille peut etre manuipuler par VBA il suffit de la reproteger en fin de macro
sub ma_MacRo() Worksheets("feuil1").Unprotect password = "MdP" .... ' la tout plein de trucs , sde mise en forme , d'écriture , d'effacement .... Worksheets("feuil1").Protect password = "MdP" end sub-
Merci pour ta réponse David
Mais cela ne marche pas. Pire, cela a mis une protection sur la feuille que je ne peux pas enlever car je n'ai pas le Mdp?!?
Aussi, aurais tu une idée pour enlever la protection? J'ai essayer "Mdp" mais cela ne marche pas!
Du coup, le script ne s'execute pas!!!
Si tu as une solution, je suis vraiment embêter, je n'avais pas de sauvegarde du fichier !!!
Merci par avance,
Stéphane- Après une grosse frayeur, j'ai trouvé la solution pour supprimer la protection de la feuille sans connaitre le mot de passe :
http://fordom.free.fr/
J' en reviens donc à mon probleme initiale, le script refuse de fonctionner dès que la protection de la feuille est active,
Quelqu'un aurait il une solution?
Stéphane
-
-
Private Sub Worksheet_SelectionChange(ByVal Target As Range) Worksheets("feuil1").Unprotect Password = "MdP" Cells.Interior.ColorIndex = xlNone With ActiveCell .EntireRow.Interior.ColorIndex = 27 Worksheets("feuil1").Protect Password = "MdP" End With End Sub
ceci marche très bien
dans ce cas effectivement le mot de passe est MdP en respectant la casse
par contre la feuille est effectivement protégée
en sortie de macro
par contre ce qui arrive parfois le mot de passe VBA n'est pas reconnu au clavier (j'ai le problème ici et sur un programme perso)
mais si tu doit écrire dans une cellule tu peux employer ceciPrivate Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean) Worksheets("feuil1").Unprotect Password = "MdP" Cancel = True End Sub
en changeant de sélection tu protèges la feuille à nouveau
en changeant de cellule aussi par entrée aussi
si ta protection doit juste être pour un lecteur la déprotection protection par selection change est intéressante mais si t doit travailler sur la feuille elle va vite devenir pénible
Cordialement
g.David-
Bonjour Sebastien,
Tu as raison, le code fonctionne bien...
mais je rencontre un autre soucis, lorsque la protection se réactive (dès le deplacement d'une cellule donc), je n'arrive plus a utiliser les filtres automatiques!
Est il possible d'entrer une commande libérant cette fonction?
Merci pour ton aide,
Stéphane
-
-
normalement les filtre auto sont bloqués par les protections
si tu veut t'en servir implante la macro événement sur le clic droit la feuille sera dé-protégée
mais les feuilles protéger sont assez chi... heu! laxatives? à utilisées
G.David