Creación de gráficos en VBA/Excel a partir de la versión 2007

Estándar

Hola a todos, las estadísticas de mi blog me reportan que este es el post más visitado: “Creación de gráficos con VBA/Excel”. El código de ese post va dirigido a Excel 2003 y actualmente ya estamos en la versión 2013. Actualmente yo utilizo la versión 2010, que es la que utilizan en la empresa donde laboro, espero el próximo año migren a la nueva versión la cual trae nuevas funcionalidades. Pero bien para no salirnos del tema, ahora les voy a mostrar cómo crear y manipular gráficos para versiones superiores a la 2003.

Si retrocedemos en el tiempo hasta la creación de Excel, sabremos que inicialmente los gráficos se creaban en su propia hoja de gráfico y que no fue sino hasta mediados de los 90, que Excel brindo la oportunidad de agregar un gráfico directamente en una hoja de cálculo.

Estas dos formas de trabajar los gráficos hicieron indispensable trabajar con dos modelos de objetos diferentes, el objeto Chart y ChartObject. En Excel 2007 se introdujo una tercera y novedosa forma que explica que los objetos de una hoja de cálculo son miembros de la colección Shapes (si la de las autoformas y objetos incrustados).

En Excel 2003, si el grafico pertenecía a una hoja y queríamos referenciar el color del área del mismo, teníamos que proceder de la siguiente manera:


Whorksheets(“Enero”).ChartObjects(“Chart 1”).Chart.ChartArea.Interior.ColorIndex = 4

A partir de Excel 2007 podemos utilizar la colección Shapes:


Whorksheets(“Enero”).Shapes(“Chart 1”).Chart.ChartArea.Interior.ColorIndex = 4

En cualquier versión de Excel, si un gráfico está en su propia hoja de gráfico, no es necesario especificar el contenedor, solo hay que referirse al objeto Chart:


Sheets(“Chart 1”).ChartArea.Interior.ColorIndex = 4

Más adelante estaré publicando ejemplos de código al respecto.

Anuncios

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s