[EXCEL] éxécut macros sur feuille protégée

Résolu
Furtif Messages postés 9887 Date d'inscription   Statut Contributeur Dernière intervention   -  
Acritas Messages postés 1 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour

Je cherche la syntaxe d'une commande VBA me permettant d'exécuter une macro (masquer des lignes) sur une feuille protégée par mot de passe.

Merci

1 réponse

m@rina Messages postés 23882 Date d'inscription   Statut Contributeur Dernière intervention   11 464
 
Bonjour Furtif,

Il n'y a pas 36000 solutions !
Ta macro doit comporter le déverrouillage de la feuille et le verrouillage :


sub insertion_ligne()
ActiveSheet.Unprotect ("ton_mdp")
'ajoute une ligne
Selection.EntireRow.Insert
ActiveSheet.Protect ("ton_mdp")
end sub


m@rina
21
Furtif Messages postés 9887 Date d'inscription   Statut Contributeur Dernière intervention   929
 
Bonjour et merci de ta réponse

En fait, en cherchant, j'ai trouvé ça, mais je n'arrive pas bien à l'utiliser. Certainement un problème de synthaxe.

"Utilser des macro-commandes dans une
feuille protégée.
Ce programme permet d'utiliser des macro-commandes dans une feuille
protégée par Outils, Protection.
Worksheets("Feuil1").Protect UserInterfaceOnly:=True permet de manipuler par macro une feuille protégée, tout en laissant la protection active par rapport aux manipulations de l'utilisateur.

Private Sub Workbook_Open()
Worksheets("Feuil1").Protect UserInterfaceOnly:=True
End Sub

Instruction à mettre dans Workbook_Open, cette propriété n'étant pas enregistrée avec le classeur.
"

Tu en penses quoi ?
0
m@rina Messages postés 23882 Date d'inscription   Statut Contributeur Dernière intervention   11 464 > Furtif Messages postés 9887 Date d'inscription   Statut Contributeur Dernière intervention  
 
Re..

Eh bien j'en pense que cette macro permet de protéger la feuille à l'ouverture du classeur (sans mot de passe) et c'est tout !!!
C'est utile que si on prévoit de déprotéger régulièrement cette feuille et qu'on a peur d'oublier de la reprotéger. Mais ça ne règle pas ton problème.

Si tu veux créer une macro uniquement pour insérer des lignes dans un doc protégé, et si tu as la v2002 ou 2003 (oui 2007), il suffit que tu mettes une protection et que tu autorises l'insertion de lignes... Dans ce cas, pas besoin de macro.

S'il s'agit d'une macro qui doit contenir entre autres ce type de protection, tu peux ajouter :

Worksheets("Feuil1").Protect AllowInsertingRows:=True


Ça dépend de ce que tu veux faire exactement.

m@rina
0
Furtif Messages postés 9887 Date d'inscription   Statut Contributeur Dernière intervention   929 > Furtif Messages postés 9887 Date d'inscription   Statut Contributeur Dernière intervention  
 
OK,

en fait, sur une feuille de devis, je n'utilises jamais toutes les lignes, et je souhaite masquer celles que je n'utilise pas (Qté du produit à 0) alors que la feuille est protégée.
Je sais bien détecter celà, je sais bien masquer ces lignes, mais ça coince dès que c'est protégé par mot de passe.
Je pensais que cette macro me permettrait d'exécuter des macros .. feuille protégée.

Comme cette feuille de devis est également distribuée dans un réseau, je ne peux pas la diffuser sans protection mot de passe (Outil / protection) que je tien à garder secret.
0
m@rina Messages postés 23882 Date d'inscription   Statut Contributeur Dernière intervention   11 464 > Furtif Messages postés 9887 Date d'inscription   Statut Contributeur Dernière intervention  
 
J'avais lu "Insérer des lignes" au lieu de "masquer des lignes"...

Cela dit, ça ne change en rien le problème.

Tu reprends la première macro que je t'ai donnée et ça fonctionnera. Tu protégeras également la macro pour que personne ne voit ton mdp, et c'est OK . La macro suivante cache la ligne sélectionnée sur une feuille protégée :

sub furtif()
ActiveSheet.Unprotect ("toto")
Selection.EntireRow.Hidden = True
ActiveSheet.Protect ("toto")
end sub


Tu peux la tester en remplaçant "toto" par ton mot de passe.

m@rina
0
Furtif Messages postés 9887 Date d'inscription   Statut Contributeur Dernière intervention   929 > m@rina Messages postés 23882 Date d'inscription   Statut Contributeur Dernière intervention  
 
Je te remercie.

Vais essayer ça dès que pas plus tard que ce soir ....

Cordialement ...
0