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.
Y ahora vemos la función EXCELEINFOCONCATENAR donde apreciamos que sólo tiene dos parámetros: Rango y Separador.
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