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).
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,
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,
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, invitarte a compartir tus dudas en los comentarios o en el foro, y a darle clic a la publicidad de abajo para ayudarme a seguir creando contenido.
Hasta la próxima.
0 comentarios