Discussione:
grafici dinamici in ecxel e vba
(troppo vecchio per rispondere)
tempesta
2004-10-21 23:58:53 UTC
Permalink
Un problema relativo a grafici "dinamici". Se creo una macro in excel che
faccia un grafico di una zona che seleziono io a mano, non ho alcun
problema.
Se poi pero' vado a modificare a mano nel codice il range su cui fare il
grafico, in modo da
inserire delle variabili e renderlo dinamico, il compilatore mi restituisce
il seguente errore:

"Metodo cells dell'oggetto "_global" non riuscito".

Come mai?

Esempio:

Se lascio scritto:

ActiveChart.SetSourceData Source:=Sheets("anomalie").Range("B4:M259"), _
PlotBy:=xlColumns

Tutto ok.

Se sostituisco:

ActiveChart.SetSourceData Source:=Sheets("anomalie").Range(Cells(4,
PosInizio + 1), Cells(259, PosInizio + 11))), _
PlotBy:=xlColumns


Mi restituisce l'errore di cui sopra!!! :-(

Come posso risolvere?
Non so da dove iniziare.
Un sacco di volte che ritocco a mano una macro di questo tipo, specie
sull'oggetto "range", mi restituiste un errore simile.




Grazie per ogni suggerimento!!!!!
Ignazio
2004-10-22 14:54:55 UTC
Permalink
Post by tempesta
Un problema relativo a grafici "dinamici". Se creo una macro in excel che
faccia un grafico di una zona che seleziono io a mano, non ho alcun
problema.
Se poi pero' vado a modificare a mano nel codice il range su cui fare il
grafico, in modo da
inserire delle variabili e renderlo dinamico, il compilatore mi restituisce
"Metodo cells dell'oggetto "_global" non riuscito".
Come mai?
ActiveChart.SetSourceData Source:=Sheets("anomalie").Range("B4:M259"), _
PlotBy:=xlColumns
Tutto ok.
ActiveChart.SetSourceData Source:=Sheets("anomalie").Range(Cells(4,
PosInizio + 1), Cells(259, PosInizio + 11))), _
PlotBy:=xlColumns
Mi restituisce l'errore di cui sopra!!! :-(
Come posso risolvere?
Prova a modificare il codice così:

With Sheets("anomalie")
ActiveChart.SetSourceData _
Source:=.Range(.Cells(4, PosInizio + 1), .Cells(259, PosInizio + 11)),
_
PlotBy:=xlColumns
End With
--
Ciao
Ignazio
tempesta
2004-10-22 15:34:54 UTC
Permalink
Post by Ignazio
With Sheets("anomalie")
ActiveChart.SetSourceData _
Source:=.Range(.Cells(4, PosInizio + 1), .Cells(259, PosInizio + 11)),
_
PlotBy:=xlColumns
End With
--
Caro Ignazio, sinceramente non so come ringraziarti!!!
FUNZIONA benissimo!!!
Anche se non so perchè... comunque funziona!!! è pero' un peccato che le
macro non possano essere modificate a mano in modo semplice!

Grazie ancora... Beh... a questo punto, dato che mi sa che è una cosa
simile... non è che sai anche perchè non funzionano i pulsanti? Ti rigoro
l'altra domanda simile:
Come faccio a fare in modo che una macro FUNZIONI quando la associo a
un pulsante command1???

Se provo a fare una macro e a incollare il testo in
"CommandButton1_Click()", mi restituisce errore!!!
Se invece provo a premere il tasto di scelta rapida (associato allo stesso
codice!!!) non mi dà errore, come mai???

Un esempio:

Private Sub CommandButton1_Click()


Windows(1).Activate
Sheets(1).Activate
Range("A1:M256").Select
Selection.Copy
Windows("prima bozza").Activate
Range("a4").Select
ActiveSheet.Paste

Mi restituisce (solo se associato il codice al pulsante): "errore nel metodo
select
per la classe range"... perchè?
Inoltre se in

Windows(1).Activate
Sheets(1).Activate

Al posto di uno metto il nome del file e il nome del foglio, anche qui,
funziona solo con la macro e non se incollo il codice in "Private Sub
CommandButton1_Click()"


Qualsiasi aiuto... io non so piu' che fare!!!

Loading...