Añadir series de datos a un gráfico usando VBA en Microsoft Excel

Escrito por Administrador

8 de mayo de 2023

Hoy vamos a aprender a añadir series de datos a un gráfico que tengamos creado en una hoja Excel usando VBA.

Sé que uno de los temas que no incluí en el curso de VBA para Excel, fue el de cómo crear y gestionar gráficos. Es un tema extenso que ha llegado el momento de ir abordando, así que iré subiendo posts sobre este tema próximamente.

Para el ejemplo he usado un gráfico de dispersión, comunmente utilizados para averiguar la intensidad de la relación entre dos variables numéricas. En este caso, vamos a estudiar cómo se comportan dos impresoras. Representaremos el número de errores según aumenta el número de impresiones realizadas (litros de tinta).

enviar-pedidos-proveedores-por-email-excel
Como véis en la figura, el gráfico se encuentra vacío porque aún no he asignado series de datos al mismo. A la izquierda he construido una tabla con dos series de datos de cada impresora.

Con el desplegable que se encuentra debajo de la tabla, vamos a poder seleccionar qué serie de datos mostrar en el gráfico.

Pero antes de nada, os muestro el código que se esconde detrás del botón Gráfico.

Sub Grafico()

Dim series As series
Dim cht As Chart

'Si elegimos la serie de datos 1

If Cells(18, "E") = 1 Then

'Borramos los datos del gráfico

Set cht = ActiveWorkbook.Sheets(1).ChartObjects("Grafico_1").Chart

For i = cht.SeriesCollection.Count To 1 Step -1
cht.SeriesCollection(i).Delete
Next i

'Añadimos la serie de datos 1

cht.SeriesCollection.NewSeries.Select

With Selection
.Name = Range("C2").Value
.XValues = Range("C4:C13")
.Values = Range("D4:D13")
End With

'Si elegimos la serie de datos 2

ElseIf Cells(18, "E") = 2 Then

'Borramos los datos del gráfico

Set cht = ActiveWorkbook.Sheets(1).ChartObjects("Grafico_1").Chart

For i = cht.SeriesCollection.Count To 1 Step -1
cht.SeriesCollection(i).Delete
Next i

'Añadimos la serie de datos 2

cht.SeriesCollection.NewSeries.Select

With Selection
.Name = Range("E2").Value
.XValues = Range("E4:E13")
.Values = Range("F4:F13")
End With

End If

End Sub

Si, por ejemplo, seleccionamos la serie de datos 1 y pulsamos el botón Gráfico, vemos como aparecen representados dichos puntos de manera automática,
enviar-pedidos-proveedores-por-email-excel
Vemos cómo la relación entre los litros de tinta (proporcional al nº de impresiones) y el número de errores es lineal.

Seleccionamos ahora la segunda serie de datos,

enviar-pedidos-proveedores-por-email-excel

Para esta impresora, vemos como la relación entre las dos variables sigue una tendencia exponencial.

Espero que te haya sido de utilidad este ejemplo sobre cómo añadir series de datos a un gráfico usando VBA en Microsoft Excel. Descarga el archivo de ejemplo y practica.

Por último, quiero invitarte a compartir tus dudas en los comentarios o en el foro. Intentaré ayudarte en todo lo que pueda, y así aprenderemos todos.

Hasta la próxima.

Si te ha servido y quieres donar

Descarga el archivo del ejemplo

0 comentarios

Enviar un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.

Últimas publicaciones

Categorías

abril 2024
LMXJVSD
1234567
891011121314
15161718192021
22232425262728
2930 

Debates en el foro

Avatar
Buscar Datos en Columnas
Avatar
Formularios con ADO

Contacto