Protéger les cellules contenant des formules

Comment faire pour protéger des cellules contenant des formules, sachant que l'on doit pouvoir saisir des données ailleurs sur cette feuille ?

Plusieurs solutions :
A) Tu sélectionnes tes cellules contenant les formules à protéger, puis Données -> Validation -> Autoriser Personnalisé Dans la zone Formule, tu écris >1.

B)
1- Déverrouille toutes les cellules de la feuille : Ctrl+A puis clic-droit sur la zone en surbrillance, Format de cellule, onglet Protection, décoche la case Verrouillée, puis OK,
2- ensuite verrouille uniquement les plages à protéger : Ctrl+T, Cellules... coche la case d'option Formules, valide par OK, puis sur une des cellules en surbrillance (ou par le menu Format) clic-droit Format de cellule, onglet protection, coche la case Verrouillée, puis OK
3- remet la protection de la feuille. Outils, Protection, Protéger la feuille

C) par VBA

sub Protéger_formules()
 ' Installe un contrôle par Données validation
 ' dans toutes les cellules contenant des formules de la feuille active
 
 Range("A1").Select
 On Error Resume Next
 Selection.SpecialCells(xlCellTypeFormulas, 23).Select
 With Selection.Validation
  .Delete
  .Add Type:=xlValidateCustom, AlertStyle:=xlValidAlertStop,
 Operator:= _
  xlBetween, Formula1:=">1"
  .IgnoreBlank = True
  .InCellDropdown = True
  .InputTitle = ""
  .ErrorTitle = "Formule verrouillée"
  .InputMessage = ""
  .ErrorMessage = _
  "Pour déverouiller cette formule, Données -> Validation -> Autoriser
 Tout"
  .ShowInput = True
  .ShowError = True
 End With
 
 end sub

Si tu as souvent besoin de protéger tes cellules pour éviter d'effacer par erreur des formules par exemple, relie cette macro à un bouton sur ta barre d'outils..

Auteurs : , ,

Mots clefs associés à cette page : , ,