Texte de couleur variable

Bonjour à toutes et à tous.

Je cherche un code VBA pour que le texte que je tape dans une cellule change de couleur en fonction du nombre de caractère.

Exemple de 1 à 4 caractères en Vert, de 5 à 8 en bleu et de 9 à 12 en rouge.

J'ai essayer ça mais cela ne marche pas.

Range("F9").Select

With ActiveCell.Characters(Start:=1, Length:=4).ColorIndex = 3

With ActiveCell.Characters(Start:=5, Length:=4).ColorIndex = 5

ActiveCell.Characters(Start:=9, Length:=4).ColorIndex = 6

End With

End Sub

Merci beaucoup

Bonjour ,

Essaye ceci

Sub test()
Range("A1").Select
If Len(Range("A1")) < 5 Then
   Range("A1").Font.ColorIndex = 4
ElseIf Len(Range("A1")) < 9 Then
   Range("A1").Font.ColorIndex = 5
Else
   Range("A1").Font.ColorIndex = 3
End If
End Sub

cordialement

Merci pour ton aide,

Je suis désolé mais il ne se passe rien...

Sinon :

Private Sub Worksheet_Change(ByVal Target As Range)
    Target.Characters(1, 4).Font.ColorIndex = 3
    Target.Characters(5, 4).Font.ColorIndex = 5
    Target.Characters(9).Font.ColorIndex = 6
End Sub

Le code de ramoutch va changer la couleur du texte de toute la cellule en fonction de la longueur de la chaine contenu dans la cellule

Le code ci dessus va changer les 4 premiers caracteres en rouge, puis les 4 suivants en bleu et les derniers en jaune. (dans toutes les cellules : a modifier si necessaire)

Cela depend de ton besoin...

Dis nous si cela te convient et si oui : clos la demande.

+++

damien

Merci beaucoup cela fonctionne.

Comment peut on spécifier ce code juste pour une cellule.

Merci

Exemple pour cellule A1

Private Sub Worksheet_Change(ByVal Target As Range)

If Target.AddressLocal = ("$A$1") Then

Target.Characters(1, 4).Font.ColorIndex = 3

Target.Characters(5, 4).Font.ColorIndex = 5

Target.Characters(9).Font.ColorIndex = 6

End If

End Sub

Rechercher des sujets similaires à "texte couleur variable"