Esta es la macro.
Sub colores()
'x Elsamatilde
'se quitan posibles colores en tabla de nros
rgo = "A1:SX42"
Range(rgo).Interior.ColorIndex = xlNone
'recorre col valores desde fila 1 hasta la última con datos.
x = Range("TD" & Rows.Count).End(xlUp).Row
'contempla que quizás haya filas vacías en col TD
For y = 1 To x 'ajustar fila de inicio
If Range("TD" & y) <> "" Then
'busca el valor en el rango
colorin = Range("TD" & y).Interior.Color
Set busco = Range(rgo).Find(Range("TD" & y), , lookat:=xlWhole)
If Not busco Is Nothing Then
dire = busco.Address
Do
busco.Interior.Color = colorin
'sigue buscando en la tabla
Set busco = Range(rgo).FindNext(busco)
Loop While Not busco Is Nothing And busco.Address <> dire
End If
End If
'pasa al sgte número
Next y
MsgBox "Fin del proceso."
End Sub
Aclaración: No sirve si los colores fueron asignados con Formato condicional.
Más sobre el método FINDNEXT en video 23 de mi canal.
Sdos y no olvides valorar las respuestas.
Elsa