Recopilar en una celda información de una columna

03/03/2006 - 10:12 por Hans | Informe spam
Hola,

necesitaría construir una función que dada una columna, analice todas
las filas de la misma y si dichas filas contienen texto más largo de 2
caracteres, concatene el valor (texto) de dicha celda y la fila de la
misma en otra.

El resultado que necesito, por ejemplo en la celda A1 sería del tipo:

PEDRO5;JUAN8;INES26...

Donde Pedro, Juan, Inés sería los datos de las celdas no vacías con
más de 2 carácteres y
5, 8, 26 la fila en la cual se encuentra dicho nombre.

Todos los datos salen de la misma columna. En dicha columna hay celdas
en blanco y celdas combinadas.

Imagino que se trata de crear una función matricial, con clausula SI()
y CONCAT, pero no acabo de ligar como

Gracias

Slds Hans
 

Leer las respuestas

#1 AnSanVal
03/03/2006 - 14:25 | Informe spam
Copia el siguiente código en un módulo (Editor de VBA) …

Function unir(miRango As Range)
Dim celda As Range
For Each celda In miRango
If Len(celda) > 2 Then
unir = unir & celda
End If
Next celda
End Function

… y luego, suponiendo que los datos que quieres chequear y concatenar están
en A2:A25, escribe en la celda que quieras obtener el resultado: =unir(A2:A25)
Un saludo desde Tenerife (España).


"Hans" escribió:

Hola,

necesitaría construir una función que dada una columna, analice todas
las filas de la misma y si dichas filas contienen texto más largo de 2
caracteres, concatene el valor (texto) de dicha celda y la fila de la
misma en otra.

El resultado que necesito, por ejemplo en la celda A1 sería del tipo:

PEDRO5;JUAN8;INES26...

Donde Pedro, Juan, Inés sería los datos de las celdas no vacías con
más de 2 carácteres y
5, 8, 26 la fila en la cual se encuentra dicho nombre.

Todos los datos salen de la misma columna. En dicha columna hay celdas
en blanco y celdas combinadas.

Imagino que se trata de crear una función matricial, con clausula SI()
y CONCAT, pero no acabo de ligar como

Gracias

Slds Hans


Preguntas similares