Mettre en gras une partie d'une cellule contenant plusieurs formules

sekophi

XLDnaute Nouveau
Bonjour à tous,

Après avoir passé une bonne heure sur le forum afin de trouver une solution à mon problème en vain,
Je me permet d'ouvrir un nouveau sujet.

en gros voila ma formule :

="Embarqué à "&RECHERCHEV(L3;Tableau!B4:p200;9;FAUX)&" par "&RECHERCHEV(L3;Tableau!B4:p200;10;FAUX)&" le "&TEXTE(RECHERCHEV(L3;Tableau!B4:p200;8;FAUX);"jj mmmm aaaa")&""

Je voudrait obtenir :

Embarqué à Paris par Avion le 01 décembre 2013

J'ai essayer par macro, je n'ai pas trouver de solution ....

Merci d'avance pour votre aide !! ;)
 

BOISGONTIER

XLDnaute Barbatruc
Repose en paix
Re : Mettre en gras une partie d'une cellule contenant plusieurs formules

Bonjour,

Cf exemple en PJ

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
   If Not Intersect([A2:A2], Target) Is Nothing And Target.Count = 1 Then
      lib = Application.VLookup(Target, [MaTable], 2, False)
      If Not IsError(lib) Then
        Target.Offset(, 1) = "Libellé:" & lib & " xxx"
        Target.Offset(, 1).Characters(Start:=9, Length:=Len(lib)).Font.ColorIndex = 3
        Target.Offset(, 1).Characters(Start:=9, Length:=Len(lib)).Font.Bold = True
      End If
   End If
End Sub

JB
 

Pièces jointes

  • ColoriageTexte.xls
    27 KB · Affichages: 134
Dernière édition:

mapomme

XLDnaute Barbatruc
Supporter XLD
Re : Mettre en gras une partie d'une cellule contenant plusieurs formules

Bonjour sekophi et bienvenue sur XLD, BOISGONTIER :)

Selon moi (mais je me trompe peut-être - mais sans doute pas - mais j'aimerais bien -) votre demande n'est pas réalisable. Si une cellule contient du texte, je sais le faire mais pas si elle contient une formule.

J'ai essayé un palliatif (à adapter à votre cas puisqu'aucun fichier n'a été fourni) en utilisant la colonne B à droite de la colonne A. Chaque fois qu'un des antécédents des formules de la colonne A est modifié, on met à jour la colonne B. On peut masquer la colonne A.

Pour modifier les antécédents des formules de la colonne A, sélectionner les valeurs dans la table D3:F6 (zone en gris). Cette zone regroupe d'ailleurs pour l'exemple joint, les antécédents de la colonne A.

Les code sont dans le module de "Feuil1" et dans le module "module1". Je les ai "un tout petit peu" commenté.

Edit: v2 idem v1 mais avec activation/désactivation des évènements.
 

Pièces jointes

  • Mettre en gras une partie d'une cellule contenant plusieurs formules v1.xlsm
    25.4 KB · Affichages: 102
  • Mettre en gras une partie d'une cellule contenant plusieurs formules v2.xlsm
    25.7 KB · Affichages: 94
Dernière édition:

phlaurent55

Nous a quittés en 2020
Repose en paix
Re : Mettre en gras une partie d'une cellule contenant plusieurs formules

Bonjour à tous,

Selon moi (mais je me trompe peut-être - mais sans doute pas - mais j'aimerais bien -) votre demande n'est pas réalisable. Si une cellule contient du texte, je sais le faire mais pas si elle contient une formule.
voici une solution qui fonctionne sur des cellules contenant une formule
......... mais après lancement de la macro, les formules disparaissent et sont remplacées par le texte

il reste à faire un petit peu de ménage dans le code (réalisé avec des copier-coller de bout de codes issus de l'enregistreur)

à+
Philippe
 

Pièces jointes

  • 111.xlsm
    22.1 KB · Affichages: 106
  • 111.xlsm
    22.1 KB · Affichages: 96
  • 111.xlsm
    22.1 KB · Affichages: 85

mapomme

XLDnaute Barbatruc
Supporter XLD
Re : Mettre en gras une partie d'une cellule contenant plusieurs formules

Une occasion, phlaurent55, pour te saluer :)

Effectivement, j'aurais dû préciser "tout en gardant les formules".

Sinon en éclatant la formule, on peut toujours le faire sans macro... (j'en ai presque honte :eek: mais je l'ai déjà fait pour un fichier perso)
 

Pièces jointes

  • Mettre en gras une partie d'une cellule contenant plusieurs formules v3.xlsx
    10.7 KB · Affichages: 140
Dernière édition:

phlaurent55

Nous a quittés en 2020
Repose en paix
Re : Mettre en gras une partie d'une cellule contenant plusieurs formules

Re-bonjour,

un autre essai "en trompant l'ennemi"

à+
Philippe
 

Pièces jointes

  • 111.xlsm
    20.5 KB · Affichages: 151
  • 111.xlsm
    20.5 KB · Affichages: 135
  • 111.xlsm
    20.5 KB · Affichages: 132

chop85

XLDnaute Nouveau
Re : Mettre en gras une partie d'une cellule contenant plusieurs formules

Bonjour,

Savez-vous quel serait le moyen de modifier le même texte plusieurs fois dans la même cellule ?

ex avec le fichier en pièce jointe. J'ai commencé la macro, mais il me manque la condition pour arriver à modifier plusieurs fois le même texte ds la même cellule.

Merci pour votre aide
 

Pièces jointes

  • Texte à modifier.xlsm
    13.2 KB · Affichages: 97

mapomme

XLDnaute Barbatruc
Supporter XLD
Re : Mettre en gras une partie d'une cellule contenant plusieurs formules

Bonsoir chop85,

(...) Savez-vous quel serait le moyen de modifier le même texte plusieurs fois dans la même cellule ? (...)

En insérant une boucle Do until ... Loop pour le traitement de chaque cellule de la colonne A:

le code:
VB:
Option Explicit

Sub Mise_en_forme()
Dim i&, j&, g&, DerniereLigne&, debut&

Application.ScreenUpdating = False
DerniereLigne = Cells(10000, 1).End(xlUp).Row
  For g = 1 To DerniereLigne
    debut = 1
    Do Until debut >= Len(Cells(g, 1))
      i = InStr(debut, Cells(g, 1), "{")
      j = InStr(debut, Cells(g, 1), "}")
      If i = 0 Or j = 0 Then Exit Do
      Cells(g, 1).Characters(i + 1, j - i - 1).Font.Bold = True
      Cells(g, 1).Characters(i + 1, j - i - 1).Font.Color = RGB(5, 5, 210)
      debut = j + 1
    Loop
  Next g
Application.ScreenUpdating = True
End Sub

Edit : v2 avec une petite amélioration
 

Pièces jointes

  • Texte à modifier v2.xlsm
    19.2 KB · Affichages: 123
Dernière édition:

Discussions similaires

Membres actuellement en ligne

Statistiques des forums

Discussions
312 105
Messages
2 085 350
Membres
102 870
dernier inscrit
Armisa