Programación de Gráficos en Excel VBA
A continuación vamos a ver dos programas en Excel VBA. Un programa de bucle a través de todos los gráficos en una hoja y cambia cada gráfico a un gráfico circular.
El otro programa cambia algunas propiedades de la primera tabla.
-
Crear algunas cartas (o descargar el archivo de Excel).
Coloque un botón de comando en la hoja de trabajo y añadir las líneas de código siguientes:
-
En primer lugar, tenemos que declarar un objeto ChartObject. El objeto ChartObject actúa como un contenedor para un objeto de gráfico. Llamamos a la CHT ChartObject pero se puede utilizar cualquier nombre.
Dim cht As ChartObject
-
Los ChartObjects colección contiene todos los gráficos incrustados en una sola hoja. Queremos bucle a través de todas las cartas sobre la primera hoja. Añadir lo siguiente para cada bucle siguiente.
For Each cht In Worksheets(1).ChartObjects Next cht
-
El objeto gráfico representa un gráfico de un libro. Agregue la siguiente línea de código para el bucle For Each Siguiente para cambiar cada gráfico a un gráfico circular.
cht.Chart.ChartType = xlPie
Nota: de nuevo, CHT actúa como un contenedor para el objeto gráfico. Usamos la propiedad ChartType para cambiar el tipo de gráfico. Usamos el xlPie constante integrada para cambiar cada gráfico a un gráfico circular.
-
Resultado cuando hace clic en el botón de comando en la hoja:
Ahora vamos a cambiar algunas propiedades de la primera tabla.
Colocar otro botón de comando
en la hoja de trabajo y añadir las siguientes líneas de código:
-
Los ChartObjects colección contiene todos los gráficos incrustados en una sola hoja. Agregue la siguiente línea de código para activar el primer gráfico:
Worksheets(1).ChartObjects(1).Activate
Ahora podemos hacer referencia a esta tabla como la ActiveChart.
-
Añadir la siguiente línea de código para cambiar el título del gráfico.
ActiveChart.ChartTitle.Text = "Sales Report"
-
Agregue la siguiente línea de código para mover la leyenda a la parte inferior del gráfico:
ActiveChart.Legend.Position = xlBottom
-
Resultado cuando hace clic en el botón de comando en la hoja: