VBA : problème dans macro pour modifier couleur police

  • Initiateur de la discussion Initiateur de la discussion saya
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

S

saya

Guest
Bonjour,

J'ai écrit une macro pour faire le bilan des agendas des membres de mon service.
Ce bilan est créé dans une nouvelle feuille. Si la personne est absente, son trigramme est inscrit dans la cellule adéquate, et si plusieurs personnes sont absentes le même jour, les trigrammes sont séparés par un saut de ligne dans la cellule. Pour plus de lisibilité, j'ai voulu affecter une couleur de police à chaque trigramme.
Pour le moment, la macro est affectée au bouton dans la feuille "référence".

Si je fais le bilan de 2 agendas, tout va bien, les bonnes couleurs apparaissent (Cf fichier joint, feuille "Bilan CCD SAD")

Mon souci, c'est que si je fais le bilan de plus de 2 agendas, les couleurs des trigrammes du milieu sont modifiées pour reprendre celle du premier trigramme, alors que le dernier trigramme a bien la bonne couleur (cf fichier joint feuille "bilan CCD SAD SFT")

Je n'arrive pas à comprendre d'où vient mon problème. Quelqu'un pourrait-il voir ce qui ne va pas, svp ?

merci d'avance,
Saya
 

Pièces jointes

Dernière modification par un modérateur:
Re : VBA : problème dans macro pour modifier couleur police

Bonjour saya,

pas trop le courage de fouiner dans tes macros pour te dire où corriger le basar. Par contre, si tu lances cette macro à la suite de la tienne, cela remettra les bonnes couleurs au bon endroit.
VB:
Sub test()
Dim c As Range
If ActiveSheet.Name <> Feuil3.Name Then Exit Sub
For Each c In Range("D3:H54")
 If c <> "" Then
   For t = 1 To Len(c) Step 4
     Select Case Mid(c, t, 3)
       Case "SAD"
        c.Characters(Start:=t, Length:=3).Font.ColorIndex = 46
       Case "CCD"
        c.Characters(Start:=t, Length:=3).Font.ColorIndex = 29
       Case "SFT"
        c.Characters(Start:=t, Length:=3).Font.ColorIndex = 10
     End Select
   Next t
 End If
Next
End Sub

cf. fichier joint.
 

Pièces jointes

Re : VBA : problème dans macro pour modifier couleur police

Merci beaucoup, j'avoue que je n'avais pas pensé à corriger les couleurs après coup ^^ des fois, on a vraiment la tête dans le guidon ....

Bonne journée !
Saya
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Retour