Concatenar

20/08/2004 - 22:59 por Javier | Informe spam
Hola a todos,

Me interesa saber cómo concatenar diferentes celdas, pero
la duda es por rango, es decir:

A B
1 12345
2
3
4
5

Sé como hacerlo con el uso de '&' o la función
=Concatenate(), pero es posible hacerlo por todo un rango.

Imaginemos 500 registros. Sería algo tardado utilizar la
funcion =Concatenate (A1,A2,A3A500) o utilizar
¡&A2&A3...&A500. ¿Existe alguna otra función que
permita concatenar por RANGO??

Muchas gracias!
 

Leer las respuestas

#1 MarianoH
21/08/2004 - 08:48 | Informe spam
Javier: Aquí una función que hace lo que necesitás.
Hay que ir al editor de visual basic (alt+F11), insertar - módulo, doble
click en módulo1 y pegar el siguiente código:

Function ConcatenarRango(RangoAConcatenar As Range) As String
Dim h As Range
For Each h In RangoAConcatenar
ConcatenarRango = ConcatenarRango & h.Value
Next h
End Function

Después se usa como cualquier función de Excel:
=ConcatenarRango(A1:B4)
es igual a:
=Concatenar(A1;B1;A2;B2;A3;B3;A4;B4)
O sea que recorre el rango de izquierda a derecha y de arriba hacia abajo.
(Ah, y no sirve para rangos con varias áreas)

Esta función sirve solo para el libro donde la incluyás, si querés que te
sirva para todos los libros esperá a que alguno de los tantos que saben
mucho más que yo responda mi post "Ámbito de una función"

Saludos
Mariano A. Hernández

"Javier" escribió en el mensaje
news:2fe001c486f8$93decc80$
Hola a todos,

Me interesa saber cómo concatenar diferentes celdas, pero
la duda es por rango, es decir:

A B
1 12345
2
3
4
5

Sé como hacerlo con el uso de '&' o la función
=Concatenate(), pero es posible hacerlo por todo un rango.

Imaginemos 500 registros. Sería algo tardado utilizar la
funcion =Concatenate (A1,A2,A3A500) o utilizar
¡&A2&A3...&A500. ¿Existe alguna otra función que
permita concatenar por RANGO??

Muchas gracias!

Preguntas similares