Mettre en couleur un caractère dans une cellule en fonction de sa position

Bonjour,

En colonne J de mon tableau, je souhaiterais lorsque je saisis une information dans une cellule et bien entendu après avoir validé par "entrée" :

Si le 3è caractère est un 2, sa mise en forme est rouge

Si le 3è caractère est un 3, sa mise en forme est bleue

Si le 3è caractère est un 4, sa mise en forme est vert

Les autres caractères sans changement.

Exemple :

T00P006L420-

T02P006L423-

T03P006L503-

T04P006L647-

Est-ce possible?

Merci d'avance pour vos réponses.

Bonjour ,

Un essai....

image
15essai.xlsm (16.80 Ko)

Cordialement,

Cela fonctionne parfaitement !

Merci beaucoup pour cette précieuse aide

Bonjour,

Autre petite demande.

Je souhaite faire la même chose sur la colonne F (la mise en forme se fera à la fois en colonne F et J) , mais le code vérouille la commande à la colonne J par " If Target.Column <> 10 "

J'ai essayé plusieurs choses pour intégrer la colonne F et donc adapter le code, mais cela ne fonctionne pas.

Je suis sur que c'est simple mais cela fait une semaine que je cherche et ne trouve pas.

Merci pour votre aide !

Bonjour Monadesign_83, le forum,

Essaies ainsi:

Private Sub Worksheet_Change(ByVal Target As Range)
 If Target.Count > 1 Then Exit Sub
  If Target.Column = 6 Or Target.Column = 10 Then
   With Target
      Select Case Mid(.Value, 3, 1)
       Case Is = 2
       .Characters(3, 1).Font.ColorIndex = 3 'rouge
       Case Is = 3
       .Characters(3, 1).Font.ColorIndex = 5 'bleu
       Case Is = 4
       .Characters(3, 1).Font.ColorIndex = 10 ' vert
       Case Else
      .Characters(3, 1).Font.ColorIndex = xlAutomatic  'noir
     End Select
    End With
  End If
End Sub

Cordialement,

Impeccable ! Merci beaucoup...

Tellement évident d'utiliser le "=" que je n'y ai même pas pensé !

Rechercher des sujets similaires à "mettre couleur caractere fonction position"