Création conditionnellle

Résolu
Bonjour,
Bonjour,
j'ai une petite question

si je prends la base suivante :

Sub Macro1()
'
' Macro1 Macro
'
Range("B5").Select
Selection.FormatConditions.Delete
Selection.FormatConditions.Add Type:=xlCellValue, Operator:=xlEqual, _
Formula1:="=""""""NC"""""""
Selection.FormatConditions(1).Interior.ColorIndex = 39
Range("B5").Select

End Sub

En gardant B5 comme référence est il possible d'étendre ce processus à 10 conditions avec

Si ........then

Formula1:="=""""""NC"""""""
Selection.FormatConditions(1).Interior.ColorIndex = 39
Formula1:="=""""""1"""""""
Selection.FormatConditions(1).Interior.ColorIndex = 39
Formula1:="=""""""2"""""""
Selection.FormatConditions(1).Interior.ColorIndex = 39
Formula1:="=""""""3"""""""
Selection.FormatConditions(1).Interior.ColorIndex = 39
Formula1:="=""""""4"""""""
Selection.FormatConditions(1).Interior.ColorIndex = 39
Formula1:="=""""""5"""""""
Selection.FormatConditions(1).Interior.ColorIndex = 39
Formula1:="=""""""6"""""""
Selection.FormatConditions(1).Interior.ColorIndex = 39
Formula1:="=""""""7"""""""
Selection.FormatConditions(1).Interior.ColorIndex = 39
Formula1:="=""""""8"""""""
Selection.FormatConditions(1).Interior.ColorIndex = 39
Formula1:="=""""""BAD"""""""
Selection.FormatConditions(1).Interior.ColorIndex = 39

merci

4 réponses

  1. essaies !
    0
    1. Si je demande c'est parce que je n'y arrive pas bien sur !
      0
  2. narrives pas à quoi ? aucune question n'a été posée dans ce post
    0
    1. En gardant B5 comme référence est il possible d'étendre ce processus à 10 conditions différentes.................?

      j'avais oublié le point d'interrogation !!!!!!!

      je demande une aide sur une procédure qui me semble trop longue telle que je la vois
      0
  3. Contributeur
    Bonsoir,

    Non, ce n'est pas comme ça que ça marche.
    format.condition(i) est la mise en forme conditionnelle qui n'accepte que 3 items ( i = 1, 2 ou 3 c'est tout).
    La tu remplaces la 1ère condition par une autre.

    Est-ce vraiment un format conditionnel que tu veux ou juste affecter une couleur à la cellule ?

    Si c'est affecter une couleur à la cellule tu peux mettre autant de tests que tu veux et lancer la macro sur un evenement change par exemple.
    Si tes tests sont nombreux tu peux utiliser qcq chose comme:
    select case [B5].value
    case 1 to 8, "NC", "BAD"
    [B5].Interior.ColorIndex = 39
    case 9
    'ce que tu veux
    case else
    [B5].Interior.ColorIndex = xlNone
    end select

    eric
    0
    1. Merci Eric j'ai pigé je vais pouvoir l'exploiter ainsi

      Select Case [B5].Value
      Case 1 To 8, "NC", "BAD"
      [B5].Interior.ColorIndex = 3
      Case 9
      [B5].Interior.ColorIndex = 6
      Case Else
      [B5].Interior.ColorIndex = 5
      End Select

      encore merci pour ton aide
      0