Mise en forme conditionnelle

Bonjour,

je souhaiterais savoir s'il est possible de demander à excel de reconnaitre sur une case precise une mise en forme conditionnelle et si elle la reconnait, quelle la reproduise sur une case désignée.

Je sais pas si je suis tres claire, mais si vous pouvez m'aider je vous en serai tres reconnaissante...

Merci

Léa
Configuration: Windows XP
Internet Explorer 6.0

3 réponses

  • Votes
  • Date
  • Date décroissante
  1. C'est possible avec un module VBA

    je dirais que "c'est tiré par les cheveux" mais c'est possible je l'ai déjà fait.
    par contre ce n'est pas possible avec une formule ....

    notez cependant que la mise en format conditionnel implique l'analyse
    d'une condition dont la sortie est un format mais on peut faire la même chose
    avec une condition SI dont la sortie serait une valeur.

    a+
    1. Alors la je m'excuse mais j'ai rien compris...
    2. @lleryBonsieur,
      Le Monsieur te dit...nan je rigole.
      En fait le Monsieur te dit qu'il est souvent plus simple d'obtenir le résultat que tu cherches en faisant les choses differement (notamment peut-être par la formule si alors sinon)..de ce que tu demandes qui n'est à priori réalisable que par une macro.
      A priori tu utlise déjà une mise en forme condtionnelle pour une colonne et ou cellule style rouge si = ou <> de quelquechose et tu veux que ce format rouge soit récupéré adns une autre colonne ou cellule.
      Si la mise en format est du à une valeur tu peux récupérer par l'exsitence de cette valeur cette information autrepart..
    3. @cocotehierMerci pour ta reponse mais concretement on fait comment? c'est possible ou pas du tout,

      Merci
    4. @llerybon exemple

      tu crées un module et tu place cela dedans.
      je te recommande d'utiliser une nouvelle feuille
      qui va utiliser les cellules A3 à C8

      Sub test_exemple()
      '
      Dim C As Variant

      Range("A3").Select
      Selection.Interior.ColorIndex = 3 ' rouge
      Range("A3").Value = 1
      Range("A4").Select
      Selection.Interior.ColorIndex = 6 ' jaune
      Range("A4").Value = 2
      Range("A5").Select
      Selection.Interior.ColorIndex = 4 'vert
      Range("A5").Value = 3
      Range("A6").Select
      Selection.Interior.ColorIndex = 3 ' rouge
      Range("A6").Value = 1
      Range("A7").Select
      Selection.Interior.ColorIndex = 6 ' jaune
      Range("A7").Value = 2
      Range("A8").Select
      Selection.Interior.ColorIndex = 4 'vert
      Range("A8").Value = 3

      ' je viens d'écrire les valeurs 1,2,3..., dans A3,A4,A5...A8
      'la couleur du fond est Rouge/jaune/vert

      For Each C In Range("A3:a8")
      If C.Interior.ColorIndex = 3 Then
      ' si c'est du rouge
      C.Offset(0, 1) = "C'est rouge"
      End If

      If C.Interior.ColorIndex = 6 Then
      ' si c'est du rouge
      C.Offset(0, 1) = "C'est jaune"
      End If

      If C.Interior.ColorIndex = 4 Then
      ' si c'est du rouge
      C.Offset(0, 1) = "C'est Vert"
      End If
      Next

      End Sub

      mais plus simplement

      avec la formule en C3

      =SI(A3=1;"C'est rouge";SI(A3=2;"Cest jaune";SI(A3=3;"c'est vert")))

      tu obtiens la même chose ce n'est pas la couleur qui est contrôlée mais la valeur de la cellule.