jueves, 15 de septiembre de 2011

Filtros Avanzados en Excel: Más allá del Autofiltro

Introducción
Los filtros en general son útiles cuando estamos trabajando con bases de datos con en Excel y deseamos obtener únicamente aquellas filas de datos que cumplen con algún criterio que definamos. Existen dos tipos de filtro: los Autofiltros y los Filtros Avanzados, siendo estos últimos los que pretendemos explicar en esta tarea.


¿Qué es?
El Filtro Avanzado es una herramienta que se usa en general cuando los Autofiltros quedan “cortos” para lo que pretendemos obtener de la base de datos. Su ventaja está en que podemos optar bien por filtrar sobre la misma base de datos, al igual que el Autofiltro, o bien realizar un copiado con los registros filtrados que cumplan las condiciones o criterios dados en otro lugar de la planilla que nosotros seleccionemos.
El filtrado oculta temporalmente las filas que no se desea mostrar. Cuando Excel filtra filas, le permite modificar, aplicar formato, representar en gráficos e imprimir el subconjunto del rango sin necesidad de reorganizarlo ni ordenarlo. Entonces, en los filtros avanzados se utilizan criterios lógicos para filtrar las filas, en este caso, se debe especificar el rango de celdas donde se ubican los mismos.

¿Cómo usarlo?
En la barra de operaciones debemos ir a la pestaña “Datos”, luego al panel “Ordenar y filtrar” donde debemos hacer clic donde dice “Avanzadas”. Así aparece la ventana “Filtro Avanzado”:





¿Qué significa cada entrada?
  1. Filtrar la lista sin moverla a otro lugar: se filtran los datos en el mismo lugar donde se encuentra la tabla.
  2. Copiar a otro lugar: la tabla filtrada puede aparecer en un lugar especificado de la misma Hoja o en otra Hoja de cálculo, donde sea que queramos. Al elegir esta acción, se activará la opción de “Copiar a”. (Es importante mencionar que esta opción es más recomendable ya que se mantiene la tabla original y se obtiene una tabla aparte con la información que requerimos.)
  3. Rango de la lista: seleccionar el rango que deseamos filtrar.
  4. Rango de criterios: es el rango elegido por el usuario para ubicar los criterios de filtrado. Se explica con más detalle a continuación.
  5. Copiar a: esta opción queda habilitada cuando se marca la casilla del punto 2, en cuyo caso deberemos especificar el lugar sonde queremos que aparezca la tabla filtrada, para esto sólo es necesario especificar donde se ubicará la tabla “filtrada”.
  6. Existen 2 opciones para señalar esta ubicación: una es simplemente señalando una celda donde a partir de ésta quedará la tabla “filtrada” y tendrá la misma cantidad de columnas (variables) del rango de lista. Y la otra es seleccionando un rango, previamente construido, conformado únicamente por aquellas variables que nos interesará mostrar en la tabla “filtrada”.
  7. Sólo registros únicos: en el caso de haber registros duplicados (filas que son exactamente iguales en todas sus celdas), mostrar sólo uno de ellos.

Ahora lo que define todo: ¿qué es el Rango de Criterio?
Para poder aplicar nuestro “Filtro Avanzado”, debemos construir previamente en otro lugar de la hoja de cálculo un rango de criterios. Este consiste en una tabla donde en la primera fila se encontrarán las variables (los encabezados de las columnas del rango de la lista) y en las siguientes filas señalaremos los criterios con los que deseamos filtrar las variables.
Un punto muy importante es que las casillas de la primera fila tienen que tener los MISMOS nombres de la tabla de datos, aunque no es necesario respetar mayúsculas o minúsculas.
Además, no es obligatorio que incluyamos todas las variables, sino que podemos incluir sólo aquellas a partir de las cuales nos interesa filtrar, a partir de los criterios que definamos para ellas.
Finalmente, debemos saber que el filtro avanzado, al igual que el Autofiltro, respeta el orden de los registros de la base de datos original y que no existen restricciones o limitaciones en cuanto a número de condiciones sobre un mismo campo.


¿Qué maneras existen para armar el Rango de Criterio?

Usando criterios complejos para Filtros Avanzados, a continuación nos ponemos en todos los casos factibles para armar el rango de criterio:
Varias Condiciones en una sola columna: Si incluye dos o más condiciones en una sola columna, escriba los criterios en filas independientes, una directamente bajo otra.
Una condición en dos o más columnas: Para buscar datos que cumplan una condición en dos o más columnas, introduzca todos los criterios en la misma fila del rango de criterios.
Una condición en una columna u otra: Para buscar datos que cumplan una condición de una columna o de otra, introduzca los criterios en filas diferentes del rango.
Más de dos conjuntos de condiciones para una columna: Para buscar filas que cumplan más de dos conjuntos de condiciones, incluya columnas múltiples con el mismo título.
Condiciones creadas como resultado de una fórmula: Puede utilizar como criterio un valor calculado que sea el resultado de una fórmula (fórmula: secuencia de valores, referencias de celda, nombres, funciones u operadores de una celda que producen juntos un valor nuevo. Una formula comienza siempre con el signo igual (=).). Si emplea una fórmula para crear un criterio, no utilice un rótulo de columna como rótulo de criterios; conserve este rótulo vacío o utilice uno distinto a un rótulo de columna del rango.
A continuación, veremos 2 ejemplos que nos servirán para entender mucho mejor todo lo que hemos explicado:

Ejemplo 1: Filtrar la lista sin moverla a otro lugar

Empezamos con nuestra base de datos inicial, a la cual le aplicaremos un filtro avanzado:
Nuestro primer paso es construir el rango de criterios. Para esto se desplazará la matriz hacia abajo insertando filas. Copiar el encabezado de la matriz y armar una tabla la cual queda de la siguiente manera:
Con el Rango de criterios armado, se filtra la información con el fin de obtener algún dato de interés que esté en la base. Para este caso, se filtrará de acuerdo a la Marca:
Ingresado el criterio de filtro en el rango, dirigirse a la opción Datos, Filtro, Avanzadas. Una vez ahí seleccionar el Rango de la lista, que corresponde a la matriz principal de la cual se filtrara la información. Luego de esto, seleccionar la matriz del Rango de Criterios. Por ultimo, al seleccionar la opción “solo registros únicos” el filtro no entregara información repetida en 2 filas distintas. Siguiendo esto, obtenemos el resultado de nuestro filtro:


Ejemplo 2: Copiando la lista filtrada a otro lugar

La diferencia con la situación anterior es que en el momento de aplicar el filtro, la información filtrada es entregada en otra tabla, dejando la matriz original sin movimientos.
Siguiendo los mismos pasos iniciales que en el ejemplo anterior, se forma la matriz de criterios y se aplica el criterio de filtro. La diferencia es que se selecciona la opción “copiar a otro lugar” entregando como referencia un matriz de rango semejante a la principal:

Luego de esto, se aplica el filtro avanzado y se obtiene la información filtrada en una tabla adicional:

Fuentes:


Autores
José Luis Allendes
Carla Franco
Diego Gaínza


5 comentarios:

  1. Excelente artículo!
    Va a servir mucho para complementar la clase de manejo de datos en Excel. Los felicito!

    ResponderEliminar
  2. Un comentario, hay que tener mucho cuidado con el valores únicos, ya sea vía filtros avanzados o vía la función valores únicos (desde of07).. hay ocasiones en las cuales igual te deja valores repetidos. así que si están en un trabajo muy purista o versión final antes del reporte siempre recomiendo una vista rápida o una cuenta condicional en el caso de rangos muy grandes. de todas formas una gran herramienta de la cual no se explota su potencia.

    ResponderEliminar
  3. Muchas gracias por tu comentario Juan. Se agradece. Cuándo quieras estas invitado a participar bien con un post o incluso con un desafío!

    ResponderEliminar
  4. Yeah!! Buen aporte, me sirvió para entender la diferencia entre Autofiltro y Filtro avanzado; salvaron mi exposición!!

    ResponderEliminar
  5. POr favor, seria genial ver los videos de ayuda, gracias.

    ResponderEliminar