colorer automatiquement une ligne dans plusieurs tableaux

terpick

XLDnaute Occasionnel
Salut Forum!
J'ai deux tableaux avec un espace entre eux.
Comment colorer automatiquement une (ou plusieurs) ligne dans ces tableaux à condition que la cellule dans colonne J est égale "à régler"???
Il faut que la couleur disparesse dès que cette cellule soit <> de "à régler".
MFC ne fonctionne pas


Merci pour vos conseils !

A +
 

Pièces jointes

  • ligne ajoutée tt modifié(2).xls
    47 KB · Affichages: 61
  • ligne ajoutée tt modifié(2).xls
    47 KB · Affichages: 65
  • ligne ajoutée tt modifié(2).xls
    47 KB · Affichages: 63

DoubleZero

XLDnaute Barbatruc
Re : colorer automatiquement une ligne dans plusieurs tableaux

Re-bonjour,

Je joins le dernier fichier, sans modifications de ma parts dans les formules. (le cite ci-joint bogue, je le ferai demain)

Effectivement ! J'ai rencontré les mêmes difficultés...

Et, puis, à mon avis, il faut qu'on aille dodo cette fois-ci. Demain (aujourd'hui) à 6 heures il faut être debout.

C'est vrai, itou !

Bon gros dodo :) !
 

terpick

XLDnaute Occasionnel
Re : colorer automatiquement une ligne dans plusieurs tableaux

Re bonjour, DoubleZero, Dull, Forum!

DoubleZero, je suis désolé, mais ci-joint.fr est toujours HS

Le temps qu'on attend les réparation, je me replonge dans XL :)

A+
Cordialement,
terpick
 

Dull

XLDnaute Barbatruc
Re : colorer automatiquement une ligne dans plusieurs tableaux

Salut terpick :), 00 :), le Forum

A coller dans le module de la feuille 'Matrice" ce code commenté qui, le l'espère, répondra à ta question

VB:
Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Count > 1 Then Exit Sub ' si plus d'une cellule séléctionnée on quitte la proc
If Not Intersect(Range("J20:J31,H38:H49"), Target) Is Nothing Then 'Si on ne se trouve pas dans les plages J20:J31 et H38:H49 rien ne se passe
If Target.Row < 37 Then 'Si la cellule active se trouve sur une ligne inférieur à 37
       Range(Target.Offset(, -8).Address & ":" & Target.Offset(, 1).Address).Interior.ColorIndex = IIf(Target = Sheets("paramètres").[H11], 6, xlNone)         'on séléctionne la cellule active, 8 cellules à gauche et 1 cellule à droite et on applique la couleur jaune si la cellule active contient ce qu'il y a dans la cellule H11 de la feuille paramètres, soit: "à régler",
   Else ' sinon (> à la ligne 37)
   Range(Target.Offset(, -6).Address & ":" & Target.Offset(, 1).Address).Interior.ColorIndex = IIf(Target = Sheets("paramètres").[H11], 6, xlNone)    'on séléctionne la cellule active, 6 cellules à gauche et 1 cellule à droite et on applique la couleur jaune si la cellule active contient ce qu'il y a dans la cellule H11 de la feuille paramètres, soit: "à régler",
   End If ' fin de la 1ère condition
End If ' fin de la 2ème condition
End Sub

Si tu suis bien les indications et que tu comprend ce que j'ai fais, tu peux appliquer les mêmes règles pour la feuille "Feuille_Tableau" :):eek:

Bonne Journée
 

terpick

XLDnaute Occasionnel
Re : colorer automatiquement une ligne dans plusieurs tableaux

Bonjour OO, Dull, le Forum !

Dull, j'ai tout compris, réussi d'appliquer votre formule pour mon dossier.

Voilà comment c'est présenté. Je vais encore changer la couleur.

Par contre, que veut dire Option Explicit ?

Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Count > 1 Then Exit Sub ' si plus d'une cellule séléctionnée on quitte la proc
If Not Intersect(Range("J20:J2000,H38:H2000"), Target) Is Nothing Then 'Si on ne se trouve pas dans les plages J20:J2000 et H38:H2000 rien ne se passe
If Target.Row < 37 Then 'Si la cellule active se trouve sur une ligne inférieur à 37
Range(Target.Offset(, -8).Address & ":" & Target.Offset(, 1).Address).Interior.ColorIndex = IIf(Target = Sheets("paramétres").[D7], 6, xlNone) 'on séléctionne la cellule active, 8 cellules à gauche et 1 cellule à droite et on applique la couleur jaune si la cellule active contient ce qu'il y a dans la cellule H11 de la feuille paramètres, soit: "à régler",
Else ' sinon (> à la ligne 37)
Range(Target.Offset(, -6).Address & ":" & Target.Offset(, 1).Address).Interior.ColorIndex = IIf(Target = Sheets("paramétres").[D7], 6, xlNone) 'on séléctionne la cellule active, 6 cellules à gauche et 1 cellule à droite et on applique la couleur jaune si la cellule active contient ce qu'il y a dans la cellule H11 de la feuille paramètres, soit: "à régler",
End If ' fin de la 1ère condition
End If ' fin de la 2ème condition
End Sub

Merci encore, Dull !

00, je laisse pas tomber la MFC ! il faut comprendre jusqu'au bout.

Bonne journée à vous tous,

A+
 

Discussions similaires