Bonjour,
N'étant pas expert en Macro non plus, j'ai utilisé l'enregistreur de macro pour voir comment Excel mettait en gras seulement quelques caracteres au lieu de toute la cellule.
J'ai eu ce code :
Sub Macro1()
'
' Macro1 Macro
'
'
Range("Q55").Select
ActiveCell.FormulaR1C1 = "test pouet"
With ActiveCell.Characters(Start:=1, Length:=0).Font
.Name = "Arial"
.FontStyle = "Normal"
.Size = 10
.Strikethrough = False
.Superscript = False
.Subscript = False
.OutlineFont = False
.Shadow = False
.Underline = xlUnderlineStyleNone
.ColorIndex = xlAutomatic
.TintAndShade = 0
.ThemeFont = xlThemeFontNone
End With
With ActiveCell.Characters(Start:=1, Length:=4).Font
.Name = "Arial"
.FontStyle = "Negrita"
.Size = 10
.Strikethrough = False
.Superscript = False
.Subscript = False
.OutlineFont = False
.Shadow = False
.Underline = xlUnderlineStyleNone
.ColorIndex = xlAutomatic
.TintAndShade = 0
.ThemeFont = xlThemeFontNone
End With
With ActiveCell.Characters(Start:=5, Length:=7).Font
.Name = "Arial"
.FontStyle = "Normal"
.Size = 10
.Strikethrough = False
.Superscript = False
.Subscript = False
.OutlineFont = False
.Shadow = False
.Underline = xlUnderlineStyleNone
.ColorIndex = xlAutomatic
.TintAndShade = 0
.ThemeFont = xlThemeFontNone
End With
Range("R55").Select
End Sub
En clair pour moi il faut juste retenir ce qui est en rouge,
Ce qui te donnerait ça :
Sub Macro1()
'
' Macro1 Macro
'
'
Range("Q55").Select
With ActiveCell.Characters(Start:=1, Length:=4).Font
.FontStyle = "Negrita"
End With
End Sub
Maintenant, ce dont tu vas avoir besoin pour rendre ça automatique :
pour la valeur de Start : la position du libellé XX dans ta cellule
pour la valeur de Length : la longueur de ton libellé
Tu peux trouver des fonctions te donnant ces valeurs sur internet (fonction de texte VBA).
Attention toutefois, dans mon programme j'ai negrita car je suis sur une versión expagnole d'Excel, il faudra peut-être remplacer par la valeur française.
Bonne chance