Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

XL 2010 Griser une ligne sous conditions

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

Scorpio

XLDnaute Impliqué
Bonjour à vous tous,
Juste un petit souci pour griser une ligne à la plage d'une plage de cellule.
J'ai une macro trouver sur le net, mais j'aimerais corriger le grisement d'une cellule par une ligne par ex: de B1à H1
Voici le code:
Private Sub Worksheet_Change(ByVal Target As Range)
'Condition pour griser une cellule
Dim Cellule As Range
If Not Application.Intersect(Target, Range("A1:A10")) Is Nothing Then
For Each Cellule In Target
If Cellule.Value = "G" Then 'changer le nom entre "" ou le chiffre sans les ""
Cellule.Offset(0, 1).Interior.Color = 255
ElseIf Cellule.Value = 2 Then 'changer le nom entre "" ou le chiffre sans les ""
Cellule.Offset(0, 1).Interior.Color = 5296274
ElseIf Cellule.Value = 3 Then 'changer le nom entre "" ou le chiffre sans les ""
Cellule.Offset(0, 1).Interior.Color = 15773696
Else
Cellule.Offset(0, 1).Interior.Pattern = xlNone
End If
Next Cellule
End If
End Sub

Merci de me donner un petit coup de pouce
A+++
 
Salut,

Un essai :
VB:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim Cellule As Range
lig = Target.Row
Set plage = Range(Range("b" & lig), Range("h" & lig)).Interior
If Not Application.Intersect(Target, Range("A1:A10")) Is Nothing Then
    Select Case Target
        Case "G": plage.Color = 255
        Case 2: plage.Color = 5296274
        Case 3: plage.Color = 15773696
        Case Else: plage.Pattern = xlNone
    End Select
End If
End Sub
 
Bonjour Hieu,
C'est super je vous remercie beaucoup, et j'aimerais juste vous demander si possible bien sur, dans ce code, j'aimerais ajouter un supplément.
C'est à dire,
lorsque je saisis "G" dans A1 je grise la ligne de b à h, OK,
et lorsque je saisis "N" dans A1, je grise la ligne de k à p.
Voilà et un grand merci Hieu pour votre aide
A+++
 
Salut,

Il suffit de rajouter un cas:
VB:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim Cellule As Range
lig = Target.Row
Set plage = Range(Range("b" & lig), Range("h" & lig)).Interior
If Not Application.Intersect(Target, Range("A1:A10")) Is Nothing Then
   Select Case Target
       Case "G": plage.Color = 255
       Case "N": Range(Range("k" & lig), Range("p" & lig)).Interior.Color = 12345 ' couleur au hasard
       Case 2: plage.Color = 5296274
       Case 3: plage.Color = 15773696
       Case Else: plage.Pattern = xlNone
   End Select
End If
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
9
Affichages
404
Réponses
5
Affichages
703
  • Question Question
Microsoft 365 worksheet_change
Réponses
29
Affichages
1 K
Réponses
2
Affichages
330
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…