lunes, diciembre 07, 2009

Construir un tablero de comandos (Dashboard) en Excel – segunda nota

En la nota anterior sobre cómo crear un tablero de comandos (dashboard) con Excel dijimos que el primer paso es definir cuál es el objetivo, que información debe ser presentada y de qué manera. A partir de ahí tenemos que solucionar tres cuestiones: diseño, datos y mecanismo, temas que serán abordados en una próxima nota.

En esta entrada me centraré en la explicación del modelo de nuestro ejemplo mostrando los elementos más importantes y las fórmulas en uso.

Desde ya, la mejor forma de entenderlo y estudiarlo es descargar y “disecar” el archivo.

Para descargar el archivo hay que seguir este enlace.

El modelo cuenta con siete hojas



Dashboard - Tablero de Comandos Excel

La hoja Dashboard contiene el tablero de comandos y es en la que el usuario interactúa. Esta hoja tiene dos columnas ocultas: A y B

Dashboard - Tablero de Comandos Excel

A y B son columnas auxiliares que controlan los datos visibles en la tabla Detalle por Sucursal

Dashboard - Tablero de Comandos Excel

En el rango B23:B32 ponemos la fórmula

=DERECHA(D23;LARGO(D23)-HALLAR(" ";D23))

cuyo cometido es extraer el número de sucursal.

En el rango A23:A32 ponemos la expresión

D23=0

Al elegir una de las zonas de la lista desplegable, sólo aparecen las sucursales pertenecientes a la zona. Esto hace que las celdas relevantes del rango A23:A32 den el resultado VERDADERO. Ese resultado controla el formato condicional de la tabla que es el responsable de ocultar las celdas de las sucursales que no pertenecen a la zona elegida

Dashboard - Tablero de Comandos Excel

La hoja tiene tres listas desplegables. Las dos superiores, que controlan la fecha de comienzo y fin del período analizado, están hechas usando los controles de la barra de Formularios.

Dashboard - Tablero de Comandos Excel

La lista de valores está controlado por el nombre tdPeriodos que es un rango dinámico basado en la tabla dinámica de la hoja “tdZonas” que analizaremos más adelante. Todos los nombres usados en el modelo están descritos en la hoja “Documentacion”.

La lista desplegable para elegir las zonas en la tabla Detalle por sucursal está basada en un control de la barra Cuadro de Controles (ActiveX).


Dashboard - Tablero de Comandos Excel

Los valores de la lista están controlados por el nombre “Zonas” y el valor elegido es guardado en la celda E18 quedando oculto por el control.
El valor de esta celda determina qué sucursales serán exhibidas en la tabla. Para este objetivo usamos la fórmula

=INDICE(INDIRECTO("col"&$E$18);FILA()-20)


Dashboard - Tablero de Comandos Excel

donde INDIRECTO("col"&$E$18) componen el nombre del rango dinámico que contiene las sucursales de cada zona.
Así si elegimos la zona Norte, por ejemplo, esta expresión da como resultado “colNorte”, cuya definición puede verse en la hoja Documentacion.

Los datos residen en la hoja BD (obviamente, base de datos), donde son captados con alguno de los métodos mencionados en la nota anterior.
Estos datos son elaborados por tablas dinámicas en las hojas “tdZonas” y “tdSucursales”.

Estas hojas son los verdaderos motores del modelo. Cada una de ellas contiene una tabla dinámica (de allí “td”) que totalizan los datos de acuerdo al corte necesario (por zona o por sucursal).

Los rangos de estas tablas están definidos por el mismo rango dinámico (“tdRango”, documentado en la hoja Documentacion) de manera que no haga falta actualizar el rango cada vez que agregamos datos.

Tanto la tabla de Zonas como la de Sucursales utilizan una fórmula compuesta por las funciones SUMA, INDIRECTO y DIRECCION para extraer los datos correspondientes.

La fórmula en la celda E7 es

=SUMA(INDIRECTO(DIRECCION($E$3+5;3;;;"tdZonas")&":"&DIRECCION($E$4+5;3)))

En esta fórmula $E$3 es el número de orden de la fecha de incio (así funciona el control combobox de la barra de Formularios); le sumamos 5 para ubicarnos en la fila correspondiente de la hoja “tdZonas” (ver la explicación en el párrafo siguiente).
Lo mismo con $E$4. Usamos INDIRECTO para convertir el texto resultado de DIRECCION en un rango que la sunción SUMA pueda usar.

Las listas de zonas y sucursales están ubicadas en la hoja “Parametros”.

Los gráficos de la hoja Dashboard son imágenes capturadas con la herramienta Cámara fotográfica de Excel. Los verdaderos gráficos están en la hoja “graficos”.

Dashboard - Tablero de Comandos Excel

Esta técnica nos permite no sólo controlar mejor el diseño de los gráficos sino también documentar el funcionamiento de éstos. Por ejemplo, los nombres en uso en el gráfico del detalle mensual

Dashboard - Tablero de Comandos Excel

El último elemento importante del modelo es una pequeña macro que nos asegura que cada vez que terminamos de agregar datos en la hoja BD, las tablas dinámicas sean actualizadas.
Como sabemos, las tablas dinámicas no tienen un mecanismo de actualización automático. Esta macro es un evento de la hoja BD que es disparado cada vez que desactivamos la hoja



Dashboard - Tablero de Comandos Excel




Technorati Tags:



miércoles, diciembre 02, 2009

Construir un tablero de comandos (Dashboard) en Excel – primera nota

A partir de las dos notas publicadas sobre tableros de comandos (dashboards) sencillos he recibido pedidos de publicar algunas notas más organizadas. Con ésta empiezo una serie de entradas sobre construcción de dashboards en Excel, que espero será de provecho para todos.

A lo largo de estas notas veremos cómo construir este tablero de comandos (dashboard).



dashboard - tablero de comandos

En este video podrán apreciar algunas de las funcionalidades del dashboard



Un dashboard es una herramienta, tal como un tablero de comando de un avión por ejemplo, que nos permite tener una idea precisa del curso de la empresa u organización en base a datos que hemos recopilado y organizado.


Excel es una excelente herramienta para construir este tipo de informes.



Una de las razones principales del poco uso de Excel para crear dashboards es que tal vez más del 80% de los usuarios desconocen el poder de Excel como plataforma de desarrollo.

Pocos usuarios conocen o están familiarizados con herramientas tales como


  • tablas dinámicas y listas (tablas en Excel 2007),


  • funciones tales como DESREF, IMPORTARDATOSDINAMICOS (GETPIVOTDATA) y SUMAPRODUCTO


  • la gran mayoría sigue usando los formatos por defecto de Excel para crear gráficos,


  • pocos usuarios intentan usar la grabadora de macros y menos aún intentan aprender técnicas sencillas de Vba (Visual Basic for Applications).



El primer paso para construir un dashboard en Excel es saber cuál es el objetivo del informe, que información y de qué manera será presentada.

Una vez que sabemos para quién, para qué y cómo presentaremos la información se nos presentan tres cuestiones que debemos resolver:

  1. Diseño - cómo diseñar el dashboard para hacerlo comprensible en forma intuitiva


  2. Datos - cómo llegarán los datos al cuaderno en el cual estará ubicado el dashboard


  3. Mecanismo - cómo manejaremos los datos para obtener la información que mostraremos en el dashboard


En esta serie de notas usaremos como ejemplo la construcción de un tablero de comando para analizar los resultados de una empresa imaginaria.

Nuestra empresa cuenta con varias sucursales repartidas en cuatro zonas: Norte, Sur, Este y Oeste. El director general de la empresa ha encargado un dashboard que muestre estos datos cuantitativos:


  • ventas,


  • número de clientes,


  • ganancia (para el caso de nuestro ejemplo no tiene importancia si se trata de la bruta o de la neta)



y los siguientes índices (KPI – key performance indicators)

  • ventas por cliente

  • porcentaje de ganancia


Todo esto debe ser dinámico y la resolución mínima de los datos debe ser mensual y comprender los últimos 3 años. Por dinámico entendemos que se podrá generar cortes de la información por períodos, zonas, sucursales y toda combinación posible de esos parámetros.

En las próximas notas estaré mostrando los pasos para construir este dashboard.

Y si, se podrá descargar el archivo... ya se puede descargar aquí


Technorati Tags:





miércoles, noviembre 25, 2009

Apertura de cuadernos Excel con contraseña

Pareciera ser que Microsoft evita tocar ciertos temas, o por lo menos, hacerlos públicos. No, no se trata de nada escandaloso. Por ejemplo, el caso de la función SIFECHA que no está documentada en ninguna versión de Excel, con la excepción de Excel 2000. El otro caso es la posibilidad de codificar la apertura de un cuaderno con una contraseña.

Excel permite determinar una contraseña sin la cual no se puede abrir el cuaderno. Las ventajas de esta funcionalidad son evidentes. Por ejemplo, podemos poner un archivo Excel en una red compartida y sólo quien conozca la contraseña podrá abrirlo.
Estas contraseñas pueden tener hasta 15 caracteres de largo y son “case sensitive” (distinguen entre mayúsculas y minúsculas).

Existen dos posibilidades para establecer una contraseña para abrir el cuaderno:



En Excel Clásico

# Con el menú Guardar Como

Después de crear el cuaderno activamos la opción Guardar Como, en la parte superior derecha activamos la opción Herramientas y apretamos Opciones Generales

cuadernos Excel con contraseña

En el formulario que se abre

cuadernos Excel con contraseña

En la ventanilla “Contraseña de apertura” introducimos la contraseña deseada. El botón “Avanzadas” permite elegir el tipo de cifrado. Las otras posibilidades son:
Crear siempre una copia de seguridad: si marcamos esta opción Excel guarda una versión del cuaderno bajo el nombre de “Copia de xxx.xls”.
Contraseña de escritura: esta contraseña sirve para controlar cambios al cuaderno uqe queramos guardar bajo el mismo nombre.
Se recomienda sólo lectura: la intención es señalar que el archivo sea sólo “read only”

Al introducir la contraseña de apertura, se abre un formulario de confirmación

cuadernos Excel con contraseña

Una vez protegido, al tratar de abrir el cuaderno, tendremos que introducir la contraseña

cuadernos Excel con contraseña

# Usando el menú Herramientas-Opciones-Seguridad

cuadernos Excel con contraseña

En Excel 2007, el proceso es similar. Usamos el botón del Office-Guardar Como. Aquí el botón de Herramientas se encuentra en la parte inferior a la izquierda

cuadernos Excel con contraseña

El resto del proceso es similar.

La segunda opción en Excel 2007 es con Office-Preparar-Cifrar Documento

cuadernos Excel con contraseña

Microsoft recomienda guardar las contraseñas en un cuaderno o documento. Claro que entonces tendríamos que protegerlo con una contraseña que tendríamos que guardar en otro documento que tendríamos que proteger con una contraseña que…ad infinitum