Función personalizada (UDF) para concatenar celdas en Excel en base a rangos y definiendo separador

Excel cuenta con una función conocida por todos que es CONCATENAR, cuyos parámetros son Texto1, Texto2,… la cual sirve para propósitos relativamente sencillos.

Me di a la tarea de hacer una función que en escencia es similar a CONCATENAR, pero que te permite elegir rangos completos de celdas, ya sea en vertical y en horizontal, así como incluirle un parámetro donde podremos asignar un separador.

Ver video Extraer datos de un archivo de texto a Excel con Power Query

Suscríbete al canal de EXCELeINFO en YouTube para aprender más de Excel y macros.

CONCATENAR VS EXCELEINFOCONCATENAR

En la siguiente imagen tenemos mi nombre dividido en 3 celdas, y lo que deseo es unirlar en una sola celda, pero separadas por un espacio. Usaremos la función CONCATENAR de Excel.

Concatenar

Y ahora vemos la función EXCELEINFOCONCATENAR donde apreciamos que sólo tiene dos parámetros: Rango y Separador.

EXCELEINFOCONCATENER

Ventajas

Más que ventaja, yo lo llamaría beneficio y ahorro de tiempo, ya que si tenemos la necesidad de concatenar muchas celdas, será mejor elegir el rango a concatenar y el separador que mejor nos convenga a nuestras necesidades.

Código de la UDF

El siguiente código deberá ser ingresado en un módulo normal de nuestro IDE de vba.

Function EXCELeINFOCONCATENAR(Rango As Range, Separador As Variant) As String
Dim t As String
Application.Volatile
For Each celda In Rango
    t = t & Separador & celda.Value
Next celda
EXCELeINFOCONCATENAR = Trim(t)
End Function

You may also like...