Come creare grafici in VBA

Excel è molto utile per creare grafici dai dati in un foglio di lavoro. Cosa succede se desideri creare un grafico direttamente da VBA, senza utilizzare alcun dato esistente in un foglio di lavoro? Puoi farlo “ingannando” Excel facendogli credere che stia lavorando con le informazioni di un foglio di lavoro e quindi fornendo le tue. La seguente macro illustra questo concetto:

 

Sub MakeChart()
    'Aggiunge un nuovo foglio grafico
    Charts.Add
    'Imposta l'intervallo di dati fittizi per il grafico
    ActiveChart.SetSourceData Sheets("Foglio1").Range("A1:D4"), _
      PlotBy:=xlColumns
    'Imposta manualmente i valori per la serie di dati
    ActiveChart.SeriesCollection(1).Formula = _
      "=SERIES(""Primo Dato"",{""a"",""b"",""c"",""d""},{2,3,4,5},1)"
    ActiveChart.SeriesCollection(2).Formula = _
      "=SERIES(""Secondo Dato"",{""a"",""b"",""c"",""d""},{6,7,8,9},2)"
    ActiveChart.SeriesCollection(3).Formula = _
      "=SERIES(""Terzo Dato"",{""a"",""b"",""c"",""d""},{10,11,12,13},3)"
End Sub

 

 

I commenti in questo esempio spiegano cosa sta succedendo per ogni passaggio. Quando si imposta l’intervallo di dati fittizi, il metodo SetSourceData presuppone che l’intervallo si trovi su un foglio di lavoro denominato Foglio1. Se non hai un foglio di questo tipo nella tua cartella di lavoro, devi modificare il comando di conseguenza.

Successivamente, quando si impostano manualmente i valori per le serie di dati, il comando SERIES viene utilizzato per specificare l’etichetta della serie (Primo Dato, Secondo Dato e Terzo Dato), l’array di etichette di categoria (a, b, c e d in tutte le serie), l’array di valori per la serie e un numero che specifica quale numero di serie rappresenta.

 

 

Tags: , , , , , , , , , , ,

Ti è stato utile?