Si tienes la versión 365 de excel, puedes utilizar la siguiente función:
Versión en español:
=UNIRCADENAS(", ";1;SI(C2:C10=I2;D2:D10;""))
Versión en inglés:
=TEXTJOIN(", ";1;IF(C2:C10=I2;D2:D10;""))
Resultado:
También te paso el código de una UDF
Function ConcatenarProv(separador As String, rango1 As Range, valor As Variant, rango2 As Range)
Dim cad As String
Dim c As Range
For Each c In rango1
If LCase(c.Value) = LCase(valor) Then
cad = cad & rango2.Cells(c.Row, 1) & separador
End If
Next
If cad <> "" Then ConcatenarProv = Left(cad, Len(cad) - 2)
End Function
Sigue las Instrucciones para una Función UDF
- Abre tu libro de excel
- Para abrir VBa y poder pegar la función, Presiona Alt + F11
- En el menú elige Insertar / Módulo
- En el panel del lado derecho copia la función
- En cualquier celda utiliza la función, como cualquier otra función de excel
Ejemplo:
=ConcatenarProv(", ";C2:C10;I2;D2:D10)
Comenta cualquier duda. No olvides valorar.
Nota: En mis ejemplos estoy utilizando punto y coma ( ; ) como separador de argumentos. Cambia a coma (, ) si es el que utilizas.