Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

VBA mise en gras d'une des deux cellules lors d'une concaténation

  • Initiateur de la discussion Initiateur de la discussion lancelot92
  • 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 !

L

lancelot92

Guest
Bonjour à tous,

après plusieurs recherches infructueuses, je m'en remets à vous pour résoudre un petit problème qui n'est sûrement pas compliqué mais que je peine à résoudre.

J'ai un code (qui fonctionne parfaitement) qui permet de concaténer les valeurs de cellules de plusieurs colonnes. Seulement j'aimerais mettre en gras (ou en couleur) la valeur qui provient de la cellule B c'est-à-dire
Code:
Range("B" & i).Value
mais je en sais pas comment m'y prendre.

Auriez vous des idées ?

Pour info, voici mon code complet

Code:
Sub tri_actions()
j = 96
For i = 4 To 31
If Not Range("G" & i) = "" Then
Range("AP" & j).Value = "- " &[B] Range("B" & i).Value [/B]& Chr(10) & Range("J" & i).Value
Range("AU" & j).Value = Range("N" & i).Value
Range("AV" & j).Value = Range("O" & i).Value
j = j + 4
End If
Next
j = 98
For i = 4 To 31
If Not Range("G" & i) = "" Then
Range("AP" & j).Value = Range("M" & i).Value
j = j + 4
End If
Next
Cells(7, 35).Select
'ActiveSheet.PrintOut
ThisWorkbook.Save
End Sub
 
Dernière modification par un modérateur:
Re : VBA mise en gras d'une des deux cellules lors d'une concaténation

Bonjour

une solution possible:

rajouter juste après
Code:
Range("AP" & j).Value = "- " & Range("B" & i).Value & Chr(10) & Range("J" & i).Value
la ligne
Code:
Range("AP" & j).Characters(3, Len(Range("B" & i))).Font.Bold = True

A+
 
Re : VBA mise en gras d'une des deux cellules lors d'une concaténation

Bonjour Paf,

Cela fonctionne... à la perfection.

Problème résolu.

Un grand merci à toi !!
 
Re : VBA mise en gras d'une des deux cellules lors d'une concaténation

Juste une petite dernière chose :
Là ça fonctionnement parfaitement car je mets en gras depuis le premier caractère jusqu'à la longueur de Range("B" & i).. La longueur de la chaîne de caractères peut donc être variable, ça ne pose aucun problème elle sera toute en gras.

Cependant si je veux mettre en gras la deuxième partie de la concaténation à savoir Range("J" & i).Value, comment dois-je faire ? Car celle-ci démarre à la fin de Range("B" & i)., et peut donc être variable.

Suis-je compréhensible ? Comment dois-je faire ?
 
Re : VBA mise en gras d'une des deux cellules lors d'une concaténation

Re,

Ce sera le même principe, en utilisant Range("AP" & j).Characters(Départ, Longueur).Font.Bold = True

Départ indiquera la position où commenceront les caractères gras( ici après CHR(10)): soit 2 ("- " ) + longueur Bi (Len(Range("B" & i))) + 1 (Chr(10)) + 1 (pour être sur le caractère suivant chr(10))

et où Longueur sera le nombre de caractères à mettre en gras; soit Len(Range("J" & i))

Bonne suite
 
Re : VBA mise en gras d'une des deux cellules lors d'une concaténation

C'est bon tout est rentré dans l'ordre. Ce que coup ci je crois que c'est résolu. =)

Un grand merci pour votre aide Paf !
 
Dernière modification par un modérateur:
- 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

Réponses
8
Affichages
356
Réponses
15
Affichages
650
Réponses
5
Affichages
837
Réponses
4
Affichages
692
  • Question Question
Microsoft 365 Export données
Réponses
4
Affichages
880
  • Question Question
Microsoft 365 worksheet_change
Réponses
29
Affichages
1 K
  • Question Question
XL 2021 VBA excel
Réponses
4
Affichages
432
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…