Bonjour,

Etant nouvellement débarqué dans le monde des Macros, j'ai scruté les postes de ce forum pour trouver la bonne formule pour ma Macro.

J'ai bien trouvé la première partie de la Macro, c'est à dire concaténer sur base d'une couleur (format conditionnel) :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
Sub concatColor()
Dim cellule As Range
Dim resultat As String
 
 'selection des valeurs
Range("I2:R2").Select
'on boucle dans toutes les cellules
For Each cellule In Selection
   'si la couleur est vert conditionnelle
   If cellule.DisplayFormat.Interior.Color = RGB(160, 255, 192) Then
   'on concatene avec un |
   resultat = resultat & cellule.Value & "|"
   End If
Next
'si le resultat n'est pas vide on enlève le dernier |
If resultat <> "" Then resultat = Left(resultat, Len(resultat) - 1)
'et on place le résultat en cellule G2
Range("G2") = resultat
End Sub
Mais là où j'ai du mal, c'est de répéter la macro sur toutes les lignes en colonne G pour lesquelles il y des données de la colonne I à R ? J'ai essayé avec "For Each", "For next", "loop", mais j'ai du mal à les intégrer à ma Macro.

D'avance merci pour votre aide