• Initiateur de la discussion Initiateur de la discussion maval
  • 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 !

maval

XLDnaute Barbatruc
Bonjour,

J'ai deux colonnes "D3😀14;H3:H14" J'aimerai que lorsque je click sur une cellule dans la colonne (D3😀14) les cellules (N2:N3) devient fond rouge .
Et lorsque je click sur une cellule dans la colonne (H3:H14) les cellules (O2:O3) devient fond rouge
Lorsque je click sur une autre cellule les cellules "N2:N3" et "O2:O3" non plus de couleur

Ex: si je click sur "D8" les cellules "N2:N3" devient fond rouge si je click sur "H9" les cellules "O2:O3" devient fond rouge ect...

Un grand merci à tout ceux qui pourront m'aider...

Cordialement
Maval
 

Pièces jointes

Dernière édition:
Re : Cellule fond rouge

Bonjour Maval, bonjour le forum,

Peut-être comme ça :
Code:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim pl1 As Range, pl2 As Range 'déclare les variables pl1 et pl2 (Plage1 et Plage2)
Dim d1 As Range, d2 As Range 'déclare les variables d1 et d2 (Destination1 et Destination2)

Set pl1 = Range("D3:D14") 'définit la plage pl1
Set pl2 = Range("H3:H14") 'définit la plage pl1
Set d1 = Range("N2:N3") 'définit la plage d1
Set d2 = Range("O2:O3") 'définit la plage d2
If Not Application.Intersect(pl1, Target) Is Nothing Then d1.Interior.ColorIndex = 3 'si la cellule active se trouve dans la plage p1, d1 en rouge
If Not Application.Intersect(pl2, Target) Is Nothing Then d2.Interior.ColorIndex = 3 'si la cellule active se trouve dans la plage p2, d2 en rouge
'si la cellule active ne se trouve ni dans p1 ni dans p2, d1 et d2 perdent la couleur
If Application.Intersect(Application.Union(pl1, pl2), Target) Is Nothing Then d1.Interior.ColorIndex = xlNone: d2.Interior.ColorIndex = xlNone
End Sub
 
Dernière édition:
Re : Cellule fond rouge

Bonjour, Stéfan, sousou et Robert,

Je vous remercie beaucoup, Sur le code de Robert qui est très bien et très bien commenter, juste une petite modif si possible et si sa vous embête pas trop, je sais que j'aurais peut le préciser avant mais bon ...!
Est-il possible: lorsque je click sur une cellule dans la colonne (H3:H14) les cellules (O2:O3) devient fond rouge,
Lorsque je click sur une autre cellule que les cellules "N2:N3" et "O2:O3" perdent leurs couleur jusqu'ici tout est nickel.
J'aimerai si possible que lorsque je click sur une cellule de la colonne "D" les cellules (N2:N3) devient fond rouge et les cellules (O2:O3)perdent le fond rouge et vis versa pour la colonne "H".

Merci et excuser moi !

Bonne journée

Max
 
Dernière édition:
Re : Cellule fond rouge

Bonjour le fil, bonjour le forum,

Tu aurais pu modifier facilement avec les explications... Enfin, il me semble :
Code:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim pl1 As Range, pl2 As Range 'déclare les variables pl1 et pl2 (Plage1 et Plage2)
Dim d1 As Range, d2 As Range 'déclare les variables d1 et d2 (Destination1 et Destination2)

Set pl1 = Range("D3:D14") 'définit la plage pl1
Set pl2 = Range("H3:H14") 'définit la plage pl1
Set d1 = Range("N2:N3") 'définit la plage d1
Set d2 = Range("O2:O3") 'définit la plage d2
'si la cellule active se trouve dans la plage p1, d1 en rouge, d2 sans couleur
If Not Application.Intersect(pl1, Target) Is Nothing Then d1.Interior.ColorIndex = 3: d2.Interior.ColorIndex = xlNone
'si la cellule active se trouve dans la plage p2, d2 en rouge'd1 sans couleur
If Not Application.Intersect(pl2, Target) Is Nothing Then d2.Interior.ColorIndex = 3: d1.Interior.ColorIndex = xlNone
'si la cellule active ne se trouve ni dans p1 ni dans p2, d1 et d2 perdent la couleur
If Application.Intersect(Application.Union(pl1, pl2), Target) Is Nothing Then d1.Interior.ColorIndex = xlNone: d2.Interior.ColorIndex = xlNone
End Sub
 
Re : Cellule fond rouge

Bonjour,

J'aimerai porté une modification au code qui a était réaliser par Robert que je profite de saluer et remercier au passage.
La modification est de rajouter en cellules "D1" le N° de l'équipe qui a était sélectionner soit en cliquant dans les cellules "D3😀14 ou H3:H14" en rajoutant 1 ou 2 suivant l'équipe sélectionner.

Un fichier valant mieux qu'un long discours, veuillez voir la pièce jointe.

Par avance merci pour votre aide.

Cordialement

Max
 

Pièces jointes

Re : Cellule fond rouge

bonjour tous
brut comme cela pas simplifier

Code:
 If Not Application.Intersect(Target, Range("D3:D14")) Is Nothing Then _
 [n2:n3].Interior.ColorIndex = 3: [d1] = [n2] Else [n2:n3].Interior.ColorIndex = xlNone
 If Not Application.Intersect(Target, Range("h3:h14")) Is Nothing Then _
 [o2:o3].Interior.ColorIndex = 3: [d1] = [o2] Else [o2:o3].Interior.ColorIndex = xlNone
 If Intersect(Target, [D3:D14,h3:h14]) Is Nothing Then [d1] = ""
 
Re : Cellule fond rouge

Bonjour Maval, Laetitia, bonjour le forum,

No comment...
Code:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim pl1 As Range, pl2 As Range 'déclare les variables pl1 et pl2 (Plage1 et Plage2)
Dim d1 As Range, d2 As Range 'déclare les variables d1 et d2 (Destination1 et Destination2)

Set pl1 = Range("D3:D14") 'définit la plage pl1
Set pl2 = Range("H3:H14") 'définit la plage pl1
Set d1 = Range("N2:N3") 'définit la plage d1
Set d2 = Range("O2:O3") 'définit la plage d2
'si la cellule active se trouve dans la plage p1, d1 en rouge, d2 sans couleur
If Not Application.Intersect(pl1, Target) Is Nothing Then d1.Interior.ColorIndex = 3: d2.Interior.ColorIndex = xlNone: Range("D1").Value = Range("N2").Value
'si la cellule active se trouve dans la plage p2, d2 en rouge'd1 sans couleur
If Not Application.Intersect(pl2, Target) Is Nothing Then d2.Interior.ColorIndex = 3: d1.Interior.ColorIndex = xlNone: Range("D1").Value = Range("O2").Value
'si la cellule active ne se trouve ni dans p1 ni dans p2, d1 et d2 perdent la couleur
If Application.Intersect(Application.Union(pl1, pl2), Target) Is Nothing Then d1.Interior.ColorIndex = xlNone: d2.Interior.ColorIndex = xlNone: Range("D1").Value = ""
End Sub
 
- 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

Discussions similaires

Réponses
5
Affichages
196
Retour