domingo, diciembre 11, 2011

Gráfico dinámico con lista desplegable - segunda nota

En la nota anterior mostramos un modelo sencillo para crear un gráfico dinámico según el valor elegido de una lista desplegable. Señalamos en esa nota alguna de sus limitaciones: la escalabilidad. Si bien esta palabra no figura en el diccionario de la Real Academia Española, Wikipedia la define como " la capacidad del sistema informático de cambiar su tamaño o configuración para adaptarse a las circunstancias cambiantes”.

Si queremos usar este tipo de reporte a lo largo del tiempo, agregando datos, tenemos que crear un modelo dinámico.
Excel permite hacer esto con facilidad, pero para lograrlo tenemos que organizar nuestro modelo en una forma distinta. El principio básico es separar los datos de los cálculos y de la presentación del reporte (en nuestro caso, el gráfico y la matriz de ventas)



Nuestra base de datos está en la hoja “BD”. El rango de los datos está definido como tabla. Todos los objetos o fórmulas que se refieren a la tabla se adaptan automáticamente a los cambios en los datos de ésta. Esto nos libera de la necesidad de crear rangos dinámicos con DESREF o INDICE.

En la hoja “cálculos” creamos nuestro “motor”. Este consiste en una tabla dinámica que resume los datos de la base de datos



La hoja reporte resume los datos en una tabla que nos servirá también para crear el gráfico dinámico



En la celda C3 ponemos una lista desplegable con los nombres de los vendedores; en la celda C4 una lista desplegable con los años disponibles. Los valores de estas listas están definidos con nombres que se refieren a rangos en la hoja “auxiliar”.

Para poner los datos de la tabla en forma dinámica usamos la función IMPORTARDATOSDINAMICOS,



Para crear la función con facilidad, definimos en Opciones de la tabla dinámica la opción “Generar GetPivotData”



Este video muestra el funcionamiento del modelo



Un último toque. Las tablas dinámicas no se actualizan automáticamente. En esta nota muestro una técnica para lograr la actualización automática de tablas dinámicas.

El archivo con el modelo se puede descargar aquí.

5 comentarios:

  1. Hola Jorge

    Gracias por tener este blog, una pregunta como agregas el campo "Años" a la tabla dinamica, si este no se encuentra en la BD.

    Saludos y Gracias

    ResponderBorrar
  2. Usando la funcionalidad "Agrupar" de las tablas dinámicas. Fijate en esta entrada del blog.

    ResponderBorrar
  3. Gracias Jorge


    Ya me salio

    ResponderBorrar
  4. Como se le hace para que un grafico de barras cambien de color ( las barras) segun los valores que tenga la tabla?
    por ejemplo quiero que todos los valores mayores a 100% me den verde, quiero que todos los valores entre 60% y 99.99% la barra cambie a color amarillo, quiero que los valores entre 59.99% y 0% esten en rojo... A mano es tedioso.. Hay alguna funcion de excel que me permita hacer esto automaticamente? :D Gracias.

    ResponderBorrar
  5. En esta nota hay un enlace a una nota en mi blog sobre gráficos (inactivo) que muestra una técnica para lograr formato condicional en gráficos de columnas.

    ResponderBorrar

Nota: sólo los miembros de este blog pueden publicar comentarios.