Menu

Protection TTe feuiiles dans une macro

Messages postés
23
Date d'inscription
mardi 4 décembre 2018
Dernière intervention
14 décembre 2018
- - Dernière réponse : DAN41HOM
Messages postés
23
Date d'inscription
mardi 4 décembre 2018
Dernière intervention
14 décembre 2018
- 11 déc. 2018 à 05:44
Bonjour le Forum,

Grâce à vous , que je remercie encore, j'ai pu réglé un problème de macro concernant la couleur de certains cadres.

Afin de complète cet exercice, j'aurai de nouveau besoin de vos lumières, je ne suis pas encore calé en Vba.

Reprenant ce dossier, j'aurai besoin que celui-ci Déprotège toutes les feuilles avant le lancement de la macro Color et que celle-ci se termine par une protection de toutes les feuilles sans mot de passe.
J'ai essayé sans succès.

le code
Public macouleur As Long

Sub ColorCadre()
tabloF = Array("JANVIER", "FEVRIER", "MARS", "AVRIL", "MAI", "JUIN", "JUILLET", "AOUT", "SEPTEMBRE", "OCTOBRE", "NOVEMBRE", "DECEMBRE")
ChoixCouleur.Show
For f = 0 To 11
Set plage = Sheets(tabloF(f)).Range("C5:F5,H5:K5,M5:P5,C15:F15,H15:K15,M15:P15,C21:F21,H21:K21,M21:P21")
plage.Interior.Color = macouleur
Next f
End Sub


Merci à Vous.
DanVoit
Afficher la suite 

Votre réponse

3 réponses

Messages postés
23
Date d'inscription
mardi 4 décembre 2018
Dernière intervention
14 décembre 2018
0
Merci
Bonsoir,

Après une recherche , j'ai trouvé la solution.
Merci malgré à tous.
Commenter la réponse de DAN41HOM
Messages postés
265
Date d'inscription
lundi 2 juillet 2018
Dernière intervention
16 décembre 2018
0
Merci
Bonjour

Tant mieux si tu as trouvé.
Ce qui serait bien c'est que tu partages ta solution,d'autres pourraient en avoir besoin.
Cordialement
Commenter la réponse de JCB40
Messages postés
23
Date d'inscription
mardi 4 décembre 2018
Dernière intervention
14 décembre 2018
0
Merci
Bonjour,

Effectivement : il y a en fait 2 solutions,

La première :


Public macouleur As Long
Sub ColorCadre()
Application.ScreenUpdating = False
tabloF = Array("JANVIER", "FEVRIER", "MARS", "AVRIL", "MAI", "JUIN", "JUILLET", "AOUT", "SEPTEMBRE", "OCTOBRE", "NOVEMBRE", "DECEMBRE")
ChoixCouleur.Show
For f = 0 To 11
Sheets(tabloF(f)).Activate
Sheets(tabloF(f)).Unprotect
Set plage = Sheets(tabloF(f)).Range("C5:F5,H5:K5,M5:P5,C15:F15,H15:K15,M15:P15,C21:F21,H21:K21,M21:P21")
plage.Interior.Color = macouleur
Sheets(tabloF(f)).Protect
Next f
Sheets(tabloF(0)).Activate
End Sub

------------------------------------------------------------------------------------------------
La deuxième qui reste très utile car il suffit de la coupler avec une autre Macro "Protection/Déprtotection en l'appelant ,

Donc d'abord la Macro Color (comme indiquer dans ma demande plus haut),
Puis insérer la commande suite :

Sub DeproColorProt()

Call DEPROTECTION 'macro deprotection
Call ColorCadre ' macro couleur cadre
Call PROTECTION ' macro protection
End Sub


C'est celle que je préfère, elle reste simple.
Bonne journée.
Commenter la réponse de DAN41HOM