En el siguiente ejemplo, tenemos la venta de productos, en diferentes centros, provincias, y, fechas, pero, este archivo, nos lo han enviado, y, por error, los productos lo han puesto a continuación del ultimo centro comercial, no en la columna de producto, el ejemplo va a consistir, en traernos los productos a la columna de producto.
Vamos a realizarlo de diferentes formas.
La manera mas simple de hacerlo es con la función FILTRAR, para ello, en la celda D2, escribo el signo igual, seguido de la función FILTRAR, y, abrimos un paréntesis.
=FILTRAR(
Como argumento array, seleccionamos la columna de centro, donde también, tenemos los productos.
=FILTRAR(C2:C377;
Como argumento include, seleccionamos la columna de fecha, y, la igualamos a blanco.
Cerramos paréntesis, y, aceptamos.
=FILTRAR(C2:C377;A2:A189="")
Nos devuelve un error.
Este error es debido a que la longitud de la columna C, es diferente a la longitud de la columna A, por lo que vamos a poner el mismo numero de filas de la columna C, a la columna A.
=FILTRAR(C2:C377;A2:A377="")
Y ya tenemos los productos en su sitio.
Para eliminar esos productos de mas de la columna de centro, debemos de copiar esta función FILTRAR, y, pegarla como valores, para que desaparezcan las funciones, y, ya podemos borrarla.
Como he dicho esta es la manera más rápida y simple, vamos a ver otra manera de hacerlo.
Si bajamos hasta donde aparece el ultimo centro, y, aparece el primer producto, podemos ver que empieza en la fila 190.
Quiere decir que he empezar a recupera datos desde la fila 190, para llegar hasta la fila 190, puedo usar la función CONTARA, para que me cuente las celdas alfanuméricas en toda la columna A.
=CONTARA(A:A)
Me devuelve 189, que donde aparece el ultimo supermercado.
Pues, le sumo 1, y, ya tengo la fila de inicio.
=CONTARA(A:A)+1
Lo siguiente que he de saber, hasta donde debe de llegar, sabemos que empieza en la fila 190, pero donde debe de acabar, si bajamos hasta la ultima fila ocupada de la columna centro, vemos que la ultima fila es la 377.
¿Cómo llegamos hasta dicha fila?
Bien, si uso la función CONTARA, para que me dé un recuento de la columna C.
=CONTARA(C:C)
Obtengo el valor 377, que son las filas ocupadas alfanuméricas de la columna C.
Si vuelvo a usar CONTARA, pero para la columna A.
=CONTARA(A:A)
Obtengo 189, que son las fechas que hay.
Si resto la cantidad mayor, menos la cantidad menor, obtengo 188, quiere decir que hay 188 productos que he de subir.
Ya conocemos la función SECUENCIA, pues vamos a crear una matriz, donde debe debemos de indicar de cuantas filas compondrá la matriz, pues va ser la resta CONTARA(C:C), menos CONTARA(A:A), que es el argumento filas, es decir:
=SECUENCIA(CONTARA(C:C)-CONTARA(A:A)
El argumento columnas, lo voy a omitir, por lo que escribo punto y coma.
=SECUENCIA(CONTARA(A:A)+1;;
El argumento inicio, va a ser la función CONTARA(A:A), mas 1.
Cerramos paréntesis, y, aceptamos.
=SECUENCIA(CONTARA(C:C)-CONTARA(A:A);;CONTARA(A:A)+1)
Tenemos una matriz desbordada en vertical, empezando por 190 hasta 377, que es donde se encuentra el ultimo producto en la columna de centro.
Ahora, con la función INDICE, vamos a indicar que, en la columna de centro, vaya al numero de fila, devuelto por la función SECUENCIA.
=INDICE(C:C;SECUENCIA(CONTARA(C:C)-CONTARA(A:A);;CONTARA(A:A)+1))
Y ya lo tenemos.
Igual que antes, si queremos eliminar los productos en la columna de centro, debemos de copiar la función, y, pegarla como valores.
Comments