Ayuda con la implementación en excel de función para encontrar un valor de una columna

Buenas,
Tengo un listado de oficinas con la producción que hace cada una de ellas, de la siguiente forma:
Oficina Producción
Madrid 20
Madrid 2 25
Barcelona 12
Barcelona 2 20
Sevilla 12
Cuenca 10
Zaragoza 22
Este es solo un ejemplo, en el caso real hay unas 4000 oficinas y la producción va de 0 a 200 con decimales incluidos.
El caso es que quiero hacer una tabla "ranking" de las 20 oficinas que más producen, lo he conseguido haciendo la tabla y poniendo una función coincidir combinada con K.esimo, de manera que cuando actualizo la producción de las oficinas el ranking también se actualiza.
El problema es que al tratarse de una función coincidir, cuando hay dos oficinas con la misma producción me repite el resultado, para el caso anterior haría esto:
RANKING:
Oficina Producción
Madrid 2 25
Zaragoza 22
Madrid 20
Madrid 20
Barcelona 12
Barcelona 12
Cuenca 10
Se carga Barcelona 2 por Madrid, y Sevilla por Barcelona.
Necesitaría modificar la fórmula para que esto no ocurra y si apareciesen Barcelona 2 y Sevilla en su sitio.
No puedo ordenar la lista de manera que le sume 1 al coincidir y coja la siguiente, y se podrían llegar a dar entre 5 y 10 coincidencias en la producción ya que hay más de 4000 oficinas.
A ver si alguien sabe como solventarlo...
Muchas gracias por adelantado.

1 Respuesta

Respuesta
1
La forma más sencilla de conseguirlo supongo que será jerarquizar los datos, para lo cual tendrías que usar una columna auxiliar, pongamos que la C, poner la siguiente fórmula en C2:
=JERARQUIA(B2;B$2:B$8)+CONTAR.SI(B$2:B2;B2)-1
Y copiarla y pegarla hasta C8
Para obtener el ránking bastaría con poner la siguiente fórmula en la fila 2 de cualquier columna vacía:
=INDICE(A$2:A$8;COINCIDIR(FILA()-1;C$2:C$8;0))
Y copiarla y pegarla hasta la fila 8 de esa columna. Para obtener la producción de las sucursales, la fórmula sería muy parecida:
=INDICE(B$2:B$8;COINCIDIR(FILA()-1;C$2:C$8;0))
Si lo ves muy complicado dímelo y subo un ejemplo.
1/ No conocía la función Jerarquizar, me parece muy útil para esto.
2/ Muy bien montado el + contar.si - 1 hasta la fila en que se encuentra el dato.
Funciona correctamente, eres un crack.
¡Mil gracias!

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas