Code VBA simple mot associé à une couleur

Bonjour, si quelqu'un peut me renseigner svp ?

Je voudrais un code VBA assez simple applicable à toute ma page.

Le mot Paris s'affiche en jaune.

Le mot Marseille s'affiche en bleu.

Le mot Bordeaux s'affiche en vert.

Merci d'avance.

Julien

J'ai réussi avec ce code ci dessous :

Private Sub Worksheet_Change(ByVal Target As Range)

Chaine = Target.Value

With Target.Interior

If InStr(Chaine, "Adieu") Then .ColorIndex = 5

If InStr(Chaine, "Bonjour") Then .ColorIndex = 8

If InStr(Chaine, "Au revoir") Then .ColorIndex = 14

End With

End Sub

Mais quand je colle un tableau sur la page contenant ces mots j'ai un message d'erreur de VBA erreur 13.

Comment puis je faire ?

Julien

Bonjour à tous

Une variante avec MFC

Bye !

70classeur1-v1.xlsx (9.14 Ko)

J'ai réussi avec ce code ci dessous :

Private Sub Worksheet_Change(ByVal Target As Range)

Chaine = Target.Value

With Target.Interior

If InStr(Chaine, "Adieu") Then .ColorIndex = 5

If InStr(Chaine, "Bonjour") Then .ColorIndex = 8

If InStr(Chaine, "Au revoir") Then .ColorIndex = 14

End With

End Sub

Mais quand je colle un tableau sur la page contenant ces mots j'ai un message d'erreur de VBA erreur 13.

Comment puis je faire ?

Julien

Bonjour

coucou Gmb

@Julien57920 il fallait juste déclaré la variable

Private Sub Worksheet_Change(ByVal Target As Range)

Dim chaine
On Error GoTo plouf

chaine = Target.Value
With Target.Interior
If InStr(chaine, "Adieu") Then .ColorIndex = 5
If InStr(chaine, "Bonjour") Then .ColorIndex = 8
If InStr(chaine, "Au revoir") Then .ColorIndex = 14
If InStr(chaine, "Salut") Then .ColorIndex = 10
End With
plouf:
Exit Sub
End  Sub

crdlt,

André

Merci André, mais ça ne fonctionne toujours pas j'ai bien rajouté dim chaîne.

J'ai le message d'erreur erreur d'exécution 13 incompatibilité de type.

Julien

Re,

à tester :

' ...
If InStr(chaine, "Bonjour") > 0 Then Target.Interior.ColorIndex = 5
'...

crdlt,

André

Bonjour André,

Merci mais ca ne fonctionne toujours pas.

Ce code marche très bien si j'écris les mots voulus dans les cellules vides.

Par contre si j'essaye de copier coller le tableau de la 2eme feuille dans la 1ere feuille ca ne fonctionne pas.

J'ai joint le fichier.

Julien

66tableau-julien.xlsm (20.69 Ko)

Re,

Je pense qu'il faut faire avec une MFC comme dit Gmb

c'est sans prise de tête de plus tu pourras copie-coller ton tableau,

NOTE je remarque que ton texte est en 'texte' et non en 'Standard ' si tu copies-collers ton tableau

crdlt,

André

Bonjour Julien, André, gmb,

J'ai adapté pour toi le code VBA d'André :

71tableau-julien.xlsm (21.12 Ko)

Si besoin, tu peux demander une adaptation.

Merci de me donner ton avis.

dhany

Rechercher des sujets similaires à "code vba simple mot associe couleur"