Modifier la couleur d'une sous-chaîne de caractères

Bjr,

Je voudrais modifier la couleur d'une chaîne de caractères à l'intérieur d'une cellule.

Passer de :

Avant

Nom1: XXX Prenom1: Xxx

Sexe1: M Com1: époux

NomP1: XXX PrenomP1: Xp

NomM1: YYY PrenomM1: Yp

à

Après

Nom1: XXX Prenom1: Xxx

Sexe1: M Com1: époux

NomP1: XXX PrenomP1: Xp

NomM1: YYY PrenomM1: Yp

Chaque ligne ci-dessus représente 1 cellule unique.

Les constantes : Nom1, Prenom1, Sexe1, Com1, NomP1, PrenomP1, NomM1, PrenomM1 en bleu

Les réponses en gras

J'ai à chaque fois un fichier de 500 lignes à traiter.

Dans le fichier joint, il y a une macro faite en enregistrement automatique mais comme ce qui n'est pas en bleu est de longueur variable à chaque fois, ça ne fonctionne pas sur l'ensemble du fichier.

Je me doute qu'il doit falloir utiliser

Mid 

et

InStr

mais je ne vois pas comment faire.

Il me semble qu'il faut d'abord sélectionner les 4 lignes et les passer en gras

puis ligne par ligne

passer les constantes en bleu, non-gras.

Mais je fais peut-être fausse route.

Merci de vos lumières.

7essai-couleur.xlsm (17.12 Ko)

Bonjour Conil26

Tu n'as pas besoin de faire le traitement comme tu penses, voici le fichier avec le code

A+

C'est exactement ce qu'il me fallait.

Dans sub couleur2, j'ai simplifié

  • la mise en forme des occurrences
With Rng.Characters(Start:=1, Length:=NbCar).Font
      .Name = "Calibri"
      .FontStyle = "Normal"
      .Size = 12
      .ColorIndex = 5
    End With
  • Ajouté 2 lignes pour : - supprimer les espaces doubles et enregistrer la cellule de travail "propre"
    Set Rng = Sht.Range("C" & Lig)
    ' Récupérer le texte pour travailler dessus
    ' Supprimer les espaces doubles partout
    sTmp = Application.Trim(Rng.Value)
    ' Modifier la cellule de travail "propre"
    Rng.Value = sTmp
  • Modifié la recherche de la 2° occurrence pour que le 2° : soit aussi coloré
NbCar = InStr(Pos, sTmp, " ") - Pos

au lieu de

NbCar = InStr(Pos, sTmp, ": ") - Pos

Très efficace.

Merci

Rechercher des sujets similaires à "modifier couleur chaine caracteres"