Macro mise en forme conditionnelle

Bonjour bonjour,

Je suis face à une petite difficulté. Je souhaite réaliser une mise en forme conditionnelle via une macro. Je dispose en faite d'un tableau dans lequel via un formulaire j'ajoute des lignes et selon la ligne la mise en forme peut changer de plus elles ne sont pas réparties à intervalle régulier d'ou une macro.

Je souhaiterais pour mon exemple que lorsque la cellule A1 = "X" que la cellule se colore en rouge idem pour B1, C1.... J1.

J'ai tenté une macro mais je bloque à ligne 6 : Selection.FormatConditions.Add Type:=xlExpression, Formula1:="=F9=""X""" et plus particulièrement sur le "F9". Je souhaiterais que cette valeur soit égale à ActiveCell.Offset(0,v) comme ça la valeur cible à laquelle doit être égale la mise en forme conditionnelle se déplace.

Pour finir lorsque j’exécute la macro pour i =0 ça marche mais pour i=1, il y un bug à la ligne : Selection.FormatConditions(Selection.FormatConditions.Count).SetFirstPriority avec le message suivant : l'indice n'appartient pas à la selection. Si quelqu'un sait pourquoi je suis preneur.

Merci à vous.

Je vous joints au besoin mon fichier exemple

Sub Mise_en_forme()
'macro 2

Dim i, n&, v&

n = "0" 'nombre de colone avant le 1èere colone à mettre en forme

  For i = 0 To 10
  v = n + i
   Selection.FormatConditions.Add Type:=xlExpression, Formula1:="=F9=""X"""
   ActiveCell.Offset(0, v).Select
   Selection.FormatConditions(Selection.FormatConditions.Count).SetFirstPriority
   With Selection.FormatConditions(1).Interior
        .PatternColorIndex = xlAutomatic
        .Color = 255
        .TintAndShade = 0
    End With
    Selection.FormatConditions(1).StopIfTrue = False
   Next i
End Sub
27exemple12.xlsm (17.13 Ko)

J'ai trouvé la solution grâce à l'aide d'une personne. voici la solution si quelqu'un cherche la même chose :

Sub Mise_en_forme_Anc()
Dim i, n&, v&

  n = "8"
  For i = 1 To 10
  v = n + i
  ActiveCell.Offset(0, v).FormatConditions.Delete
 ActiveCell.Offset(0, v).FormatConditions.Add Type:=xlTextString, String:="x", _
        TextOperator:=xlContains
  ActiveCell.Offset(0, v).FormatConditions(ActiveCell.Offset(0, v).FormatConditions.Count).SetFirstPriority
    With ActiveCell.Offset(0, v).FormatConditions(1).Interior
        .PatternColorIndex = xlAutomatic
        .Color = 255
        .TintAndShade = 0
    End With
   ActiveCell.Offset(0, v).FormatConditions(1).StopIfTrue = False
   Next i
End Sub
Rechercher des sujets similaires à "macro mise forme conditionnelle"