top of page
Foto del escritorJaime Franco Jimenez

Extraer los tres clientes de más ventas


En el siguiente ejemplo, tenemos una serie de clientes, con una serie de ventas que han realizado.



















Muchas de estas ventas se repiten.




















Nos piden ver los tres clientes de más ventas, por lo que tenemos que hacer una clasificación, bien es orden descendente, o, ascendente.


¿Qué problema tenemos?

Pues, como clasificamos los valores que se duplican.


Bien, tenemos que comparar un numero con otro, y, ver su clasificación.


Decir, que vamos a trabajar con los datos tal cual están, no los voy a ordenar.


Vamos a crear esta clasificación en otra columna.


Vamos a hacer uso de la función JERARQUIA.EQV, que nos devuelve la jerarquía o posición de un numero dentro de un rango, de forma predeterminada, dará la mayor posición al número más grande.


Entonces, en la celda F2, vamos a usar dicha función.


Escribimos el signo igual, seguido del nombre de la función, y, abrimos un paréntesis.


=JERARQUIA.EQV(


El primer argumento es número, es decir, el numero a clasificar, pues seleccionamos la celda E2.


=JERARQUIA.EQV(E2


Punto y coma, el siguiente argumento es referencia, que es el rango donde vamos a realizar la comparación, pues seleccionamos las ventas, y, lo fijamos para después arrastrar.


=JERARQUIA.EQV(E2;$E$2:$E$18)


Tiene un último argumento que es el tipo de orden, que puede ser descendente, o, ascendente, pero lo vamos a omitir, y, el valor predeterminado es orden descendente.


Aceptamos, y, tenemos como resultado, el número 9, que quiere decir que es el noveno número mayor dentro del rango.






Arrastramos la función.


Vemos la posición de cada número dentro del rango.


Donde el número 1, corresponde a los siguientes nombres:




















Pero vemos que el número 1, aparece dos veces más, clientes que tienes las mismas ventas.


Pero vemos que el número 1, aparece dos veces más, clientes que tienes las mismas ventas.


Pero, vemos que el número 2, y, 3, no aparecen, pero vemos que si tenemos un numero 4.


¿Por qué?


Cuando tenemos tres unos, salta el dos, salta el tres, y, le da 4 a Perry Haley, y, Reed juan, que es la siguiente cantidad menor, ordenado desde el número mayor al número menor.




Bien, pues, lo que queremos es clasificar estos datos, como se está haciendo, pero sin saltar números.


Voy a escribir la función completa, y, después, explicare que hace cada formula.


Voy a hacer uso de la función SUMAPRODUCTO donde vamos a comparar el valor de E2, para ver si es menor o igual al rango de valores, dicho rango lo fijamos.


=SUMAPRODUCTO((E2<=$E$2:$E$18)


Lo siguiente es dividir la función SUMAPRODUCTO entre el resultado de CONTAR.SI.


Debemos de fijar los rangos puestos en la función CONTAR.SI.


=SUMAPRODUCTO((E2<=$E$2:$E$18)/CONTAR.SI($E$2:$E$18;$E$2:$E$18))


Arrastramos.


Podemos ver la clasificación de los valores, pero ahora, no falta ningún número, va desde el numero 1 hasta el número 10.


Ahora, vamos a ver cómo funciona cada función que hemos utilizado.


Vamos a ver cómo funciona esta condición de la función SUMAPRODUCTO.


En una celda voy a poner:


=E2<=E2:E18


Aceptamos, y, tenemos una matriz desbordada con verdaderos y falsos.

















Vemos que el valor de E2, primero se compara consigo mismo, después compara si es menor que el valor de E3, y, E4, pero menor que E5, E6 y E7, así con el resto de los números.


Podemos ver que la primera cantidad, 1003, es menor que la segunda cantidad, por lo que devuelve verdadero, menor que la tercera cantidad, por lo que de nuevo devuelve verdadero, y, no es menor que la cuarta cantidad por lo que devuelve falso, así con el resto de las cantidades.















Pues esta comparación es lo que hace con cada número.


Lo siguiente que hemos hecho es dividir estos resultados por el resultado de la función CONTAR.SI.


Vamos a ver en una celda cómo funciona esta función buscando en el rango de valores y comparándolo con el mismo rango de valores.


Ponemos:


=CONTAR.SI(E2:E18;E2:E18)


Aceptamos, y, tenemos las veces que aparece cada número, por ejemplo, el primer valor vemos que aparece dos veces.


















En la función dividimos SUMAPRODUCTO entre CONTAR.SI.


=SUMAPRODUCTO((E2<=$E$2:$E$18)/CONTAR.SI($E$2:$E$18;$E$2:$E$18))


Para el primer registro, tengo el resultado de 5, arrastramos.



















Pues en una celda, voy a dividir el resultado booleano entre el resultado de CONTAR.SI.


Sabemos que verdadero se evalúa como 1, y, falso se evalúa como cero.


=E2<=E2:E18/CONTAR.SI(E2:E18;E2:E18)


Si nos fijamos en la primera línea, estamos dividendo 1 ente dos.






Como resultado tenemos 0,5.


Donde es falso nos devuelve cero.


Arrastramos.













Vamos a sumar todos estos resultados.


Vamos a sumar todos estos resultados.


¿Qué tenemos como resultado?


Tenemos el número 5.




















Si nos fijamos donde hemos usado la función, podemos ver que la primera clasificación es 5.

















Pues todo esto se hace para el primer número, es decir, para el numero 1003.


¿Qué hace la función SUMAPRODUCTO?

Pues actúa como un contenedor, donde va a realizar los pasos anteriores para cada número.


Pero, ahora, nos piden los tres clientes de más ventas, por lo que debemos de recuperar los clientes que aparecen con el número 1.








Para ello, lo vamos a hacer de forma matricial, vamos a usar el condicional SI para preguntar, si el valor de la celda B6 es igual a uno de los valores del rango G2:G18 de la hoja1, pues que nos devuelva la fila que ocupa, en caso, de no haber coincidencia, que devuelva un texto en blanco.


SI(B6=Hoja1!$G$2:$G$18;FILA(Hoja1!G2:G18);"")));"")


Aceptamos, y, obtenemos una matriz desbordada con los números de filas donde hay coincidencia.






















Después del signo igual vamos a usar la función ordenar, de manera ascendente, que es el valor predeterminado, por lo que lo omitimos.


=ORDENAR(SI(B6=Hoja1!$G$2:$G$18;FILA(Hoja1!G2:G18);""))


Aceptamos, y, tenemos los números de filas ordenados de menor a mayor.








Pues, ahora, usamos la función INDICE para conseguir el nombre del cliente.


=INDICE(Hoja1!A:A;ORDENAR(SI(B6=Hoja1!$G$2:$G$18;FILA(Hoja1!G2:G18);"")))


Vemos que donde no hay coincidencia, devuelve un error.













Para quitar los valores de error usamos la función SI.ERROR.


=SI.ERROR(INDICE(Hoja1!A:A;ORDENAR(SI(B6=Hoja1!$G$2:$G$18;FILA(Hoja1!G2:G18);"")));"")








Vamos a seleccionar toda la función, excepto el signo igual, y, pulsamos F9.


Podemos ver blanco donde no hay coincidencia, y, los nombres de los clientes que tienen el número 1.






43 visualizaciones0 comentarios

Entradas Recientes

Ver todo

Comments


bottom of page