• Initiateur de la discussion Initiateur de la discussion Jean-Edouard
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

J

Jean-Edouard

Guest
Salut le forum !!!

Je souhaite "colorer" la lgne et la colonne de la cellule sur laquelle je me trouve.
Je m'explique si je suis en D1
- la ligne 1 est colorée
- la colonne D aussi

si je passe en D2
- la ligne 1 n'est plus colorée
- la ligne 2 est colorée
- la colonne D aussi

Quelqu'un peut-il m'aider ?

D'avance, merci.

Jed
 
Bonjour José, Jean Edouard, le Forum

Oups à la bourre sur ce coup là, grillé à plate couture par mon ami José !

Enfin comme je sais pas comment tu as procédé (pas de download sur une station sensible), je poste ma trouvaille :


Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim Col As Integer, Lig As Integer

Cells.Interior.ColorIndex = xlNone

Lig = Target.Row
Col = Target.Column

Columns(Col).Interior.ColorIndex = 6
Rows(Lig).Interior.ColorIndex = 6

End Sub

NB à mettre en Private Module de la Feuille en question...

NB2, attention effacera toutes les mise en couleur des cellules de la feuille

Bon App
 
Hello Thierry,

J'ai eu une autre approche avec mémorisation de l'ancienne cellule active pour éviter de remettre toute la feuille à blanc à chaque fois.

Dans un module :

Public OldTarget As String

Dans le module de la feuille :

Private Sub Worksheet_SelectionChange(ByVal Target As Excel.Range)
If OldTarget <> "" Then
Range(OldTarget).EntireRow.Interior.ColorIndex = xlNone
Range(OldTarget).EntireColumn.Interior.ColorIndex = xlNone
End If
Target.EntireRow.Interior.ColorIndex = 17
Target.EntireColumn.Interior.ColorIndex = 17
OldTarget = Target.Address
End Sub

Je dois reconnaître que ton code est plus concis, on sent le vieux routard ;°))

Bon appétit aussi.

A+

José
 
Re Jean-Edourd, Thierry,

Si je puis me permettre une rectification de ton code Thierry :

Dim Col As Byte, Lig As Long

En effet un Byte est suffisant pour les colonnes, par contre un Integer ne suffit pas pour les lignes car si on sélectionne une ligne au delà de 32767, ça plante.

Aïe ! Pas taper Thierry ! Lol !!!

A+

José
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Retour