Macro / protect un protect feuilles

  • Initiateur de la discussion Initiateur de la discussion morpheus92
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

M

morpheus92

Guest
jai cherché par tout et je n'arrive pas a trouver comment faire une macro qui;

Private Sub ProteccionClasseur_Click()

If Sheets("Calculos").Protect Then Sheets("Calculos").Unprotect
If Sheets("Plantas").Protect Then Sheets("Plantas").Unprotect

OR

If Sheets("Calculos").Unprotect Then Sheets("Calculos").Protect
If Sheets("Plantas").Unprotect Then Sheets("Plantas").Protect

End Sub


Le but c'est > 1 click à un button
et: si feuilles verouillées -> Deverouiller
si feuilles deverouillées -> verouiller

Merci!
 
Re : Macro / protect un protect feuilles

Salut morpheus92 et le forum
Code:
Private Sub ProteccionClasseur_Click()

If Sheets("Calculos")..ProtectContents Then
    Sheets("Calculos")..Unprotect
Else
    Sheets("Calculos")..Protect
End If
If Sheets("Plantas")..ProtectContents Then
    Sheets("Plantas")..Unprotect
Else
    Sheets("Plantas")..Protect
End If
End Sub
Excel fait toujours ce que tu lui demande de faire (si c'est faisable) et quelques (rares) fois ce que tu veux 😉

Protect/UnProtect : instructions d'action, pas de lecture d'un état

il faut que l'action de protection/déprotection soit effectuée suivant un seul et même test, sous peine qu'un second test ne contre l'action du premier
A+
 
Re : Macro / protect un protect feuilles

salut gorfael, j'ai utilisé le programme que tu m'as donné et il ne marche pas, le texte se met tout en rouge.
et oui en fait j'avais compris ce que tu m'avais dit mais je ne sais pas comment le faire! je suis nouveau en excel, en fait il me faudrait trouver une foncton "goto" et "and" comme ca je pourrais faire ca;

Private Sub ProteccionClasseur_Click()

If Sheets("Calculos") or Sheets("Plantas") .Protect Then Unprotect Sheets("Calculos") and . Sheets("Plantas") else go to end

If Sheets("Calculos") or Sheets("Plantas") .Unprotect Then Protect Sheets("Calculos") and . Sheets("Plantas") else go to end



End Sub
 
Re : Macro / protect un protect feuilles

Allô!

Le code de Gorfael fonctionne bien si on réduit les points, une erreur de frappe probablement.

Code:
Private Sub ProteccionClasseur_Click()
 
If Sheets("Calculos").ProtectContents Then
     Sheets("Calculos").Unprotect
 Else
     Sheets("Calculos").Protect
 End If
 If Sheets("Plantas").ProtectContents Then
     Sheets("Plantas").Unprotect
 Else
     Sheets("Plantas").Protect
 End If
 End Sub

gf
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
15
Affichages
786
Réponses
7
Affichages
871
Retour