XL 2013 Surligner une ligne si curseur sur la ligne et dans une zone définie

Yvan1

XLDnaute Occasionnel
Bonjour,

A l'aide du code suivant, je surligne une partie de la ligne active.
Mais si je clique en dehors de la Plage définie, cela surligne aussi la ligne, ce que je ne souhaite pas.
Quelqu'un a-t-il une idée ?

Private Sub Worksheet_SelectionChange(ByVal Target As Range)

Dim Plage As Range

Ca = Application.WorksheetFunction.CountA(Range("A:A")) + 7 'Nb de lignes
Cb = Application.WorksheetFunction.CountA(Range("8:8")) - 2 'Nb de colonnes

Set Plage = Range(Cells(9, 1), Cells(Ca, Cb))

Cells.FormatConditions.Delete

With Plage.FormatConditions.Add(xlExpression, Null, "=ligne(" & Plage.Cells(1).Address(False, False) & ")=" & ActiveCell.Row)
.Font.ColorIndex = 2
.Interior.ColorIndex = 7
End With

End Sub

Merci d'avance,

Yvan
 
Solution
Bonjour Yvan,
Il suffit de limiter la plage où la macro doit être appliquée :
VB:
Sub Worksheet_Change(ByVal Target As Range)
    If Not Intersect(Target, Range("A1:C50")) Is Nothing Then
....
    EndIf
End Sub
Range("A1:C50") est à modifier selon votre besoin.

Discussions similaires

Statistiques des forums

Discussions
312 247
Messages
2 086 590
Membres
103 247
dernier inscrit
bottxok