Primera ocurrencia de fila vacía

04/01/2012 - 02:24 por sr.manuel | Informe spam
Saludos al grupo.
He estado buscando en los foros, pero no encuentro lo que necesito. Me
explico:


Tengo una una tabla de valores sobre varias columnas, tal como el
siguiente ejemplo:

A B C
==1 2,1 5,3 4,1
2 1,1 2,2 3,1
3 8,3 3,4 6,5
. .. .. ..
. etc etc etc
. etc etc etc
. <== Primera fila vacía.!!!.
.
. 4,5 3,3 5,1
. 2,0 2,8 2,9

Quisiera saber cual es la primera fila que tiene todos sus campos
vacíos.
Precisamente este número me definirá el número de filas que ha de
tener la tabla.
O por lo menos, cual es la primera celda vacía en la columna "A".

Y si es posible hallarlo mediante el uso de funciones, sin tener que
meterme en macros de VBA.
He intentado las fuciones CONTAR() y CONTARA(), pero lo que hacen es
contar dentro del rango total.
Igualmente he intentado usar la función ESBLANCO() como fórmula
matricial, pero no me aclaro mucho.

Saludos, y agradecido de antemano.

Preguntas similare

Leer las respuestas

#6 Pedro F. Pardo
31/01/2012 - 11:35 | Informe spam
Es un truco boleano.
Sirve para convertir TRUE en el número 1, por si necesitas hacer operaciones con el.

Imagina que lo aplicamos al rango (A1:A10)

ŠAŠ
Esto
es
un
[CELDA en BLANCO]
ejemplo

Si escribimos (A1:A10) obtenemos, el array {"Esto";"es";"un";0;"ejemplo";0;0;0;0;0}

Si escribimos (A1:A10="ejemplo")
obtenemos el array
{FALSE;FALSE;FALSE;FALSE;TRUE;FALSE;FALSE;FALSE;FALSE;FALSE}

Si multiplicamos por -1
-(A1:A10="ejemplo")
tenemos:
{0;0;0;0;-1;0;0;0;0;0}

y si volvemos a multiplicar por -1
obtenemos:
{0;0;0;0;1;0;0;0;0;0}
Si en lugar de buscar la palabra "ejemplo" buscamos la celda en blanco, pues cambiamos --(A1:A10="ejemplo") por --ESBLANCO(A1:A10)

Una versión alternativa de esta fórmula sin convertir los valores boleanos a números podría ser:

{=COINCIDE(VERDADERO,ESBLANCO(A:A),0)}

o ya puestos... como 0úLSO :-)

{=COINCIDE(VERDADERO,ESBLANCO(A:A),FALSO)}

Que suena como a metalenguaje robotico XD XD XD
Coincide Verdadero, EsBlanco Columna A, Falso
Pero excel lo entiende a la perfección ;-)
Respuesta Responder a este mensaje
#7 Pedro F. Pardo
31/01/2012 - 11:50 | Informe spam
Olvidé mencionar que cuando escribimos ESBLANCO(A1:A10)
el resultado es: {FALSO;FALSO;FALSO;VERDADERO;FALSO;VERDADERO;VERDADERO;VERDADERO;VERDADERO;VERDADERO}

devuelve:
{0;0;0;1;0;1;1;1;1;1}, es decir devuelve un montón de coincidencias (todas las celdas vacías.

Pero afortunadamente la función COINCIDE nos devuelve la posición solo de la primera aparición del valor buscado.
Respuesta Responder a este mensaje
#8 Pedro F. Pardo
31/01/2012 - 12:29 | Informe spam
Ops, he escrito "COINCIDE" cuando debería ser "COINCIDIR" :-(

=COINCIDIR(VERDADERO,ESBLANCO(A:A),FALSO) [CTRL+SHIFT+ENTER]
{=COINCIDIR(VERDADERO,ESBLANCO(A:A),FALSO)}
Respuesta Responder a este mensaje
#9 ProfeJM
31/01/2012 - 14:10 | Informe spam
Saludos "Pedro F. Pardo":

Muy amable por tu disertación sobre el tema.

No había encontrado ninguna explicación, al respecto, con el lujo de
detalles que tu lo haces.

Creo que eta vez lo tengo casi todo claro y digo 'casi' porque aun no
logro dilusidar si existen diferencia al usarse en fórmulas distintas
a las matriciales; ando haciendo esos ensayos.

Lo que me ha tenido atado a este foro, es que siempre ha brillado por
generosidad al compartir el conocimiento.

Mi gratitud y mi reconocimiento para ti Pedro
Respuesta Responder a este mensaje
#10 Pedro F. Pardo
31/01/2012 - 16:16 | Informe spam
No, no creo que haya diferencia.

Cuando multiplicas -1*{1,2,4,3,6} lo que hace es multiplicar por -1 cada elemento de la matriz.

Si lo haces entre números individuales funciona igual, pero solo de uno en uno.

-1*7=-7
-1*TRUE=-1
-TRUE=-1
1*TRUE=1

etc...

No se me ocurre ahora mismo ninguna aplicación pero seguro que existe. Esta idea del -- la vi por primera vez en una aplicación muy creativa de la función SUMAPRODUCTO :-) haciendo la función de suma condicional. Cuando vi por primera vez la definición de la función SUMAPRODUCTO pensé que era la función más inutil del mundo pero gracias a esos truquitos se convirtió en algo verdaderamente util ;-)

Saludos.
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una pregunta AnteriorRespuesta Tengo una respuesta
Search Busqueda sugerida