Option Explicit
Private Consignes As New Collection
Function EnColoriant(ByVal NomCouleur As String) As String
Dim Cel As Range
Set Cel = [Couleur].Find(What:=NomCouleur, LookIn:=xlValues, _
LookAt:=xlWhole, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
MatchCase:=False, SearchFormat:=False)
If Cel Is Nothing Then
EnColoriant = NomCouleur & " ?…"
Consignes.Add Array(Application.Caller, &HBABABA)
Else
EnColoriant = NomCouleur
Consignes.Add Array(Application.Caller, Cel.Offset(, 1).Interior.Color)
End If
End Function
Sub EffectuerColoriages()
Dim T()
Do While Consignes.Count > 0
T = Consignes(1)
T(0).Interior.Color = T(1)
Consignes.Remove 1: Loop
End Sub