miércoles, 15 de junio de 2011

Selección de Gráficos

Descargar el fichero: selectivo.xlsx


Podemos seleccionar diferentes gráficos con solo pulsar sobre un botón o marcar una opción. Vamos a ver un sistema que permite elegir unos u otros datos sin más que seleccionar una opción. Estos datos son los que alimentan el gráfico y por tanto conseguimos que el gráfico cambie simplemente eligiendo una opción al pulsar un botón.

Hoja 1

Supongamos que tenemos información en forma de tabla sobre dos plantas industriales, una en Barcelona y otra en Madrid.

  • La Tabla 1 (planta de Barcelona) está en el rango B4:F8
  • La Tabla 2 (planta de Madrid) está en el rango B10:F14

Debajo de estas tablas planteamos un sistema que nos permita elegir la planta que deseamos mostrar en el gráfico. Esto se hace estableciendo unas Opciones de formulario, y en este caso, concretamente, hemos elegido dos Botones de opción, uno para Barcelona y otro para Madrid.


Al elegir una u otra planta industrial queda en la celda C23 el número 1 o 2 según hubiéramos elegido la primera opción (Barcelona) o la segunda opción (Madrid).

Ahora creamos una tabla que servirá para alimentar los datos del gráfico. La tabla se encuentra en el rango H19:L23. Para vincular esta tabla con las tablas de Madrid o Barcelona según lo elegido por el usuario, utilizamos la siguiente formula para la celda H20 que luego copiamos al resto de la tabla.

=SI($C$23=1;"Barcelona";"Madrid")

Los rangos utilizados en la Hoja1 son:

  • Barcelona =Hoja1!$C$6:$F$8 
  • Madrid =Hoja1!$C$12:$F$14  

El interior de la tabla se calcula con fórmulas matriciales.

=SI($C$23=1;Barcelona;Madrid)

Incluso la tabla está formateada con Formato condicional para que tome los colores y formatos de la tabla de Barcelona o Madrid según la elección del usuario.


La tabla resultante y el gráfico asociado son los siguientes.



Hoja 2

En la Hoja2 el usuario elige el trimestre que desea representar en el gráfico. Para elegir el trimestre el usuario dispone de un Control de formulario denominado Barra de desplazamiento.


El trimestre elegido se recoge en la celda D16, y con ella se crea un vector (rango D19:D22) que indica el trimestre elegido.

En la tabla I19:K24 se crea una tabla vinculada a las dos tablas anteriores tomando los datos del trimestre elegido por el usuario.


Los rangos creados en la Hoja2 son los siguientes.

  • BCN =Hoja2!$C$6:$F$8
  • MAD =Hoja2!$C$12:$F$14
  • vector =Hoja2!$D$19:$D$22

Veamos como se calcula la Tabla que alimenta el gráfico.

  • El rango J20:J22 de color verde se consigue multiplicando el vector de los trimestres por el rango MAD. La fórmula matricial es: =MMULT(MAD;vector)
  • El rango K20:K22 de color amarillo se consigue multiplicando el vector de los trimestres por el rango BCN. La fórmula matricial es: =MMULT(BCN;vector)

La función MMULT es la que permite multiplicar matrices. Las matrices que se multiplican son MAD o BCN según se trate de la información de Madrid o Barcelona, por el vector de los trimestres. El orden de multiplicación es importante, ya que cambiadas de orden darían error.

Pruebe a cambiar los trimestres pulsando en el control de formulario denominado Barra de desplazamiento, y comprobará como cambia la tabla que se encuentra debajo del gráfico, que es la que alimenta el propio gráfico. La consecuencia de todo esto es que puede modificar el gráfico que se muestra sin más que pulsar un botón.

Para saber más

Puede consultar el siguiente enlace.

2 comentarios:

  1. Múy bueno y práctico, mejora la calidad visual de mis reportes, gracias!

    ResponderEliminar
  2. Consulta ....Para este caso se pueden hacer con graficos historicos; ó un histograma.?
    Por ejemplo que se tengan ventas de un producto a lo largo de un año y que me lo represente.

    ResponderEliminar