mi rivolgo soprattutto a te, che sei il nostro mago delle macro, ma altri contributi sono benvenuti.
In una trentina di grafici x,y devo fare a scadenze regolari un lavoro piuttosto ripetitivo: aggiungere parecchie serie di dati ogni volta.
I dati di x nuovi si trovano sempre nelle colonne adiacenti a quelli precedenti. I dati dei valori y sono sempre nella colonna A.
Per semplificare l'operazione ho cercato di compilare una macro.
Ecco il mio codice:
- Codice: Seleziona tutto
Sub AggiungiSerie()
attuale = ActiveChart.SeriesCollection.Count
nuovoX = "CB140_InvDiff!R3C" & attuale + 1 & ":R38C" & attuale + 1
nuovoN = "=CB140_InvDiff!R2C" & attuale + 1
ActiveChart.SeriesCollection.NewSeries
ActiveChart.SeriesCollection(attuale + 1).XValues = nuovoX
ActiveChart.SeriesCollection(attuale + 1).Values = "=CB140_InvDiff!R3C1:R38C1"
ActiveChart.SeriesCollection(attuale + 1).Name = nuovoN
End Sub
nuovoN è riconosciuto correttamente e mi trovo nella nuova serie il valore della cella di intestazione della nuova colonna.
nuovoX invece non è riconosciuto come range ma mi figura in forma di testo racchiuso tra virgolette e parentesi graffe.
Il plot della nuova serie è di conseguenza totalmente sbagliato.