martes, diciembre 23, 2008

Actualización automática de gráficos con listas.

Allá por el verano del 2006 (o el invierno, dependiendo de donde resida el lector) expliqué como crear un gráfico que se actualice automáticamente a medida que le agregamos datos.

La técnica consistía en usar rangos dinámicos en la función SERIES del gráfico. La ventaja de esta técnica es que es consistente con todas las versiones de Excel. Pero si usamos la versión 2003 o 2007 de Excel podemos usar una técnica mucho más sencilla.

Supongamos que tenemos esta tabla de ventas por mes a partir de la cual creamos un sencillo gráfico de columnas




Queremos que al agregar los próximos meses el gráfico se actualice automáticamente. Para hacerlo sacaremos provecho de la funcionalidad Datos--Listas.


Empezamos por seleccionar alguna de las celdas de la tabla, por ejemplo A1 y abrimos el menú Datos-Lista-Crear Lista



Excel selecciona automáticamente todo el área de la tabla



Después de controlar que la selección es la deseada, apretamos Aceptar. Excel ha creado ahora una lista y expandirá el área de la tabla automáticamente cada vez que agreguemos (o quitemos) una fila. Excel también abre la barra de herramientas de listas donde tenemos todo tipo de herramientas para administrarla



Para agregar una fila a la lista seleccionamos alguna celda del área. Veremos que aparece un marco azul alrededor del área de la lista y una estrella azul en la primer celda libre, donde debemos poner los datos



Todo los que nos queda por hacer es agregar los datos y el gráfico se actualizará automáticamente



En Excel 2007 esta técnica funciona de la misma manera pero con, como no podía ser de otra manera, algunas diferencias funcionales:

# - La funcionalidad no se llama Lista sino Tablas y no se encuentra en la pestaña Datos como en Excel 2003 sino en la pestaña Insertar



# - Al seleccionar alguna celda de la lista/tabla no aparece una nueva línea en blanco en la tabla. De todas maneras si agregamos un mes inmediatamente debajo del último registro de la tabla, Excel expande la lista en forma automática. Otra técnica en Excel 2007 es usar la tecla Tab. Por ejemplo, si después de introducir el dato de setiembre en la celda B10 apretamos TAB, Excel selecciona automáticamente la celda A11 y expande la tabla.

Microsoft ha agregado muchas otras herramientas y funcionalidades a las tablas en Excel 2007, pero esto será tema de una futura nota.



Technorati Tags:

7 comentarios:

  1. Sr. Jorge Dunkelman, muy buenas tardes. Todo mi comentario el día de hoy es para desearle una Feliz Navidad (aunque ya haya pasado el día), y un muy buen Año 2009. Tengo poco de haber conocido su blog, es excelente todo lo que plasma, además de la gran facilidad para redactarlo.
    Aunque no le conozco personalmente, por su sencillez que muestra en sus respuestas, siento como si ya lo conociera. Y en verdad le deseo un año 2009 lleno de toda clase de bendiciones.
    Un abrazo y un beso de todo corazón.
    Atte. Patricia Mtz. Hdz

    ResponderBorrar
  2. Estimado Jorge, ante todo felicitarte por este excelente blog.

    También me llamo Jorge y tengo una duda con una hoja bastante grande que estoy desarrollando en Excel2003. Incluye funciones personalizadas y código en VB.

    El problema es que a veces, al abrir la hoja, los valores de las celdas en las que utilizo alguna de mis propias funciones aparecen como #####. Si le doy a F9 vuelven a aparecer los valores.

    También me sucede que si interrumpo la ejecución de alguna macro, la mayoría de los valores de las celdas con funciones propias se pierden y aparece #VALOR. Resulta que si me pongo encima de la celda, pongo el cursor al final de la fórmula y pulso Enter, vuelve a calcularse correctamente ... pero tengo que hacer esto una por una con todas las celdas que han perdido sus valores ...

    Gracias de antemano por tu tiempo y FELIZ 2009.

    ResponderBorrar
  3. Necesito que me mandes el archivo para que oueda hacerme una idea del problema.

    ResponderBorrar
  4. Hola Jorge,
    Mirando el apunte de actualización automática de gráficos se me presenta el siguiente problema:
    tengo un rango de datos que es fijo (15 valores) y que se van actualizando día a día. Es decir, cada día agrego los datos del día anterior, y necesito obtener un grárico que tome sólo los últimos 15 días.
    Si agrego un dato más, con la solución que presentas en los gráficos variables, tendría un gráfico con 16 valores, pero me interesa mantener un rango variable con un número de entradas fijo.
    Sabes si es posible¿
    muchisimas gracias por tu ayuda!
    Oscar (esapaña)

    ResponderBorrar
  5. Jorge, cómo estás? Antes que nada quería felicitarte por la página que tenes, es realmente útil. Está todo claramente explicado y en serio es muy didáctica, gracias!

    Mi problema es que por algún motivo, no me está funcionando tu procedimiento. Te explico el caso:

    Tengo una tabla con 3 filas:
    fila 1: encabezado (semanas con el formato aaaass, es decir 201001 - 201002 -...- 201052)
    fila 2: Valores numéricos (linkeados a valores de otra página del libro, por ej =analisis!A1)
    fila 3: una fracción entre el valor de la fila 2 y otro número también linkeado.

    Mi idea es la siguiente: que el gráfico se actualice automáticamente si yo en otra pagina del libro pego una columna con el formato:
    fila1: semana (aaaass)
    fila2: valor que va en la fila 2 de la otra tabla.

    Luego quisiera bloquear dichas celdas para evitar errores de manipuleo.

    En resumen: quiero pegar datos en la pagina A y que se actualicen automaticamente en la pagina B y que a su vez el gráfico (situado en la pagina B y que toma info de la misma) también lo haga. Finalmente bloquear ese contenido.

    Espero haber sido claro.. agradecería tu respuesta!

    Muchas gracias por adelantado!

    Nicolás

    ResponderBorrar
  6. Nicolás

    mandame el archivo por mail privado (fijate en el enlace Ayuda en la parte superior del blog).

    ResponderBorrar

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