Salut Bobby Lionel et les Autres !
Je travaille moi-même sur des grands tableaux et il y a déjà pas mal de temps que je me suis fait une petite macro afin de bien me reperer.
Aussi regarde le code ci-joint :
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim Test1, Test2
Test1 = ActiveCell.Column - 3
Test2 = ActiveCell.Row - 3
If Not Application.Intersect(Target, Range('C3:L12')) Is Nothing Then
Range('C3:L12').Interior.ColorIndex = xlNone
Range(ActiveCell.Address, ActiveCell.Offset(0, -Test1).Address).Interior.ColorIndex = 6
Range(ActiveCell.Address, ActiveCell.Offset(-Test2, 0).Address).Interior.ColorIndex = 6
ActiveCell.Offset(0, -Test1).Interior.ColorIndex = 7
ActiveCell.Offset(-Test2, 0).Interior.ColorIndex = 7
ActiveCell.Interior.ColorIndex = 7
End If
End Sub
Il a l'avantage de ne pas effacer les 'Formats Conditionnels'.
Donc si tu colories tes colonnes avec un format conditionnel au préalable, tu n'auras aucun problème.
Regardons ce code :
Test1 et Test2 : -3 ,car mon tableau commence à la 3è ligne et la 3è colonne, donc tu n'as plus qu'à changer ces valeurs pour ajuster à ton tableau.
If Not Application.Intersect(Target, Range('C3:L12')) :
Tu n'as qu'à changer le Range ('C3:L12') par la plage de ton tableau qur tu veux pour déclencher ta macro.
Je te joins le fichier afin que tu voies le résultat.
Tu verras qu'en I9, j'ai un format conditionnel et que la cellule ne change pas de couleur.
@ +++
Moa
[file name=RepereTableauBobby.zip size=10888]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/RepereTableauBobby.zip[/file]
Message édité par: Moa, à: 06/05/2005 00:21