viernes, 10 de febrero de 2012

Ordenación por varios criterios

En pasados artículos hemos estudiado diversos métodos de ordenación por un solo criterio. Pero, en ocasiones, es posible hacer ordenaciones por múltiples criterios, como se comprueba al ordenar la tabla B3:D15 por la columna Indicador.

Se observa que la tabla ha quedado perfectamente ordenada de mayor a menor por la columna Indicador, pero las ciudades que tienen el mismo valor no están ordenadas por orden alfabético (Nantes, París, Burdeos y Varsovia).

Nuestro ejercicio consistirá en hacer una ordenación triple: en primer lugar, por Indicador; en segundo lugar, por País y, en tercer lugar, por Ciudad. Pero antes, veamos cómo podemos conseguir la ordenación simple por Indicador.

En F4:
=JERARQUIA(D4;$D$4:$D$15;)+CONTAR.SI($D$4:D4;D4)-1

Extendemos la fórmula hasta la fila 15.

En H4:
=INDICE($B$4:$D$15;COINCIDIR(FILA(A1);$F$4:$F$15;0);COLUMNA(A1))

Extendemos la fórmula hasta la fila 15. Seleccionamos H4:H15 y extendemos las fórmulas hasta la columna J. La primera parte del ejercicio está hecha.

Para realizar la ordenación por tres criterios, empezaremos creando una ordenación por dos criterios: primero, por País y, en segundo lugar, por Ciudad.

La ordenación será muy sencilla si creamos un campo combinado en cada fila formado por la concatenación del País y la Ciudad. Luego, asignaremos un número de orden a cada combinación.

En F4:
=B4&C4

Extendemos la fórmula hasta la fila 15.

En G4:
=CONTAR.SI($F$4:$F$15;"<="&F4)

Extendemos la fórmula hasta la fila 15.

Ahora, ya podemos crear la ordenación doble por País y Ciudad.

En I4:
=INDICE($B$4:$D$15;COINCIDIR(FILA(A1);$G$4:$G$15;0);COLUMNA(A1))

Extendemos la fórmula hasta la fila 15. Seleccionamos I4:I15 y extendemos la fórmula hasta la columna K.

En la columna M crearemos la "jerarquía" de la columna K.

En M4:
=JERARQUIA(K4;$K$4:$K$15)+CONTAR.SI($K$4:K4;K4)-1

Extendemos la fórmula hasta la fila 15. Ahora, ya podemos crear la triple ordenación.

En O4:
=INDICE($I$4:$K$15;COINCIDIR(FILA(A1);$M$4:$M$15;0);COLUMNA(A1))

Extendemos la fórmula hasta la fila 15. Seleccionamos O4:O15 y extendemos las fórmulas hasta la columna Q.





No hay comentarios:

Publicar un comentario