OVH Cloud OVH Cloud

Protection cellules spécifiquement

4 réponses
Avatar
titou
Bonjour,
Je souhaite sur une feuille de calcul protéger uniquement les cellules qui
contiennent les formules, les autres étant libres d'accès.
Merçi

4 réponses

Avatar
Daniel
Bonjour.
Sélectionne la plage à modifier et exécute le code suivant :

Sub test()
Dim c As Range
Cells.Locked = False
For Each c In Selection
If Range("A1").HasFormula = True Then
ActiveCell.Locked = True
End If
Next c
End Sub

Cordialement.
Daniel
"titou" a écrit dans le message de news:

Bonjour,
Je souhaite sur une feuille de calcul protéger uniquement les cellules qui
contiennent les formules, les autres étant libres d'accès.
Merçi



Avatar
Patrick BASTARD
Bonjour, *titou*

Toutes les cellules d'une feuille sont protégées par défaut. Pour que la
protection soit active, il faut de surcroît protéger la feuille (Menu
Outils, Protection, Protéger la feuille, avec ou sans mot de passe), avec
les options qui te conviennent.
Pour ne protéger que les cellules contenant des formules :
Sélectionne toute ta page, (clic dans le rectangle à gauche de la 1°
colonne, et au-dessus de la 1° ligne) menu Format, Cellules, onglet
Protection, et décoche la protection.
Pour protéger tes formules, menu Edition, Atteindre, bouton Cellules, cocher
Formules et clique sur OK.
Il ne te reste qu'à protéger ces cellules (Format, Cellules, Protection, et
coche Verrouillé), puis à protéger ta feuille.

Cela te convient-il ?


--
Bien amicordialement,
P. Bastard

Bonjour,
Je souhaite sur une feuille de calcul protéger uniquement les
cellules qui contiennent les formules, les autres étant libres
d'accès. Merçi


Avatar
titou
Tant de compétences alliées à tant de gentillesse font de Daniel et Patrick
des interlocuteurs incontournables avec qui il fait vraiment plaisir de
quêter des conseils
Merci à vous deux et à +
Titou
"Patrick BASTARD" a écrit dans le
message de news:
Bonjour, *titou*

Toutes les cellules d'une feuille sont protégées par défaut. Pour que la
protection soit active, il faut de surcroît protéger la feuille (Menu
Outils, Protection, Protéger la feuille, avec ou sans mot de passe), avec
les options qui te conviennent.
Pour ne protéger que les cellules contenant des formules :
Sélectionne toute ta page, (clic dans le rectangle à gauche de la 1°
colonne, et au-dessus de la 1° ligne) menu Format, Cellules, onglet
Protection, et décoche la protection.
Pour protéger tes formules, menu Edition, Atteindre, bouton Cellules,
cocher Formules et clique sur OK.
Il ne te reste qu'à protéger ces cellules (Format, Cellules, Protection,
et coche Verrouillé), puis à protéger ta feuille.

Cela te convient-il ?


--
Bien amicordialement,
P. Bastard

Bonjour,
Je souhaite sur une feuille de calcul protéger uniquement les
cellules qui contiennent les formules, les autres étant libres
d'accès. Merçi






Avatar
PMO
Bonjour,

Une autre manière de faire en utilisant l'évènement
Worksheet_SelectionChange.

Copiez le code suivant dans le code évènementiel
de la feuille concernée.

'**********
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim R As Range
On Error GoTo Erreur
Application.EnableEvents = False
Set R = Application.Intersect(Target, _
ActiveSheet.UsedRange.SpecialCells(xlCellTypeFormulas))
If Not R Is Nothing Then Target.Offset(1, 0).Select
Erreur:
Application.EnableEvents = True
End Sub
'**********

Chaque fois que l'utilisateur sélectionnera une cellule avec formule
la sélection se déplacera d'une ligne.
Si vous voulez copier une plage et si cette plage contient une formule
il faudra sélectionner cette plage décalée d'une ligne.

Cordialement.

--
PMO
Patrick Morange



Bonjour,
Je souhaite sur une feuille de calcul protéger uniquement les cellules qui
contiennent les formules, les autres étant libres d'accès.
Merçi