Protéger de cellules contenant des formules avec Excel 2010

luno123

XLDnaute Occasionnel
Bonjour j'ai voulu protéger certaines cellules de mon fichier ci-joint, et j'ai du mal à y parvenir. Les zones en question sont les suivantes:
H 10 -> I 32
L 10 -> L 32
A 37 -> C 43
B 34 -> D 35
D 39 -> F 41
G 35 -> H 43

Je vous donne ma méthode qui ne fonctionne pas. J'ai sélectionné la feuille (CTRL A) puis j'ai fait clic droit format cellule->Protection->Décocher "vérouillage"
Ensuite j'ai sélectionné les zones à protéger puis j'ai coché "vérouillage" dans onglet protection.
et en dernière phase, j'ai protégé la feuille.
Mon souci c'est que cette dernière manip m'empêche de modifier toutes les cellules de la feuille même celles que je ne veux pas protéger.

Merci d'avance pour votre aide

Luno
 

Pièces jointes

  • NDF - 2014-.xls
    51 KB · Affichages: 97

job75

XLDnaute Barbatruc
Re : Protéger de cellules contenant des formules avec Excel 2010

Bonjour luno123, le forum,

Dans le code de la feuille (clic droit sur l'onglet et Visualiser le code) :

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, [H10:I32,L10:L32,A37:C43,B34:D35,D39:F41,G35:H43]) Is Nothing Then
  With Application
    .EnableEvents = False
    .Undo
    .EnableEvents = True
  End With
End If
End Sub
A+
 

DoubleZero

XLDnaute Barbatruc
Re : Protéger de cellules contenant des formules avec Excel 2010

Re-bonjour, luno123, le Forum,

Peut-être comme suit :

Code:
Option Explicit
Private Sub Worksheet_selectionChange(ByVal c As Range)
For Each c In Selection
If c.HasFormula Then c(1, 1).Offset(, 1).Select
Next
End Sub

A bientôt :)

P. S. 1 : Bonjour, job75 :D:D

P. S. 2 : Bonjour, Jean-Marcel :D:D
 
Dernière édition:

job75

XLDnaute Barbatruc
Re : Protéger de cellules contenant des formules avec Excel 2010

Bonjour DoubleZero :) Jean-Marcel :)

Juste une variante de la solution de DoubleZero :

Code:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Intersect(Target, [H10:I32,L10:L32,A37:C43,B34:D35,D39:F41,G35:H43]) _
  Is Nothing Then Target(1).Offset(, 1).Select
End Sub
A+
 

luno123

XLDnaute Occasionnel
Re : Protéger de cellules contenant des formules avec Excel 2010

Bonjour la famille,

Jean Marcel a vu juste. Je me suis pris la tête pour pas grand chose. Merci pour les macros mais comme dit JM, pas besoin de faire compliquer quand Excel a déjà la solution simple.

Merci néanmoins d'avoir répondu à mon appel
 

Discussions similaires