Newsgroup: it.comp.lang.visual-basic
Titolo: VB6 e oggetti OLE

Ciao a tutti,
visto che non riesco ad utilizzare a dovere il controllo MsChart di VB6,
pensavo di utilizzare il controllo di "Microsoft Graph 2000", cioè quello di
Excel. Ci sono riuscito nel senso che riesco a fare apparire il controllo
Graph e, cliccando 2 volte sul grafico, si apre il mio bel foglio Excel dove
modificare i dati del grafico.
Però mi chiedo se e come posso modificare da codice i dati su excel ...
insomma, io mi collego al mio database di access, mi carico i dati e li
inserisco nel foglio excel in modo che si modifichi il grafico.
avete qualche esempio da postarmi per piacere ?
spero di essere stato chiaro, grazie.

"Jeff71" ha scritto nel messaggio
 news:fO27e.55877$kC3....@tornado.fastwebnet.it...

Ciao, Jeff71.
    Qualche esempio?
http://groups.google.com/groups?q=grafico+OR+grafici+group%3Amicrosoft.public.it.office.excel
    Visita anche:
http://www.prodomosua.it
-- 
    (Facci sapere se ed eventualmente come hai risolto. Grazie.)
Ciao :o)
Maurizio Borrelli, Microsoft MVP - Office Systems - Access
--------
?SPQR(C)
 X
--------

 ha scritto nel messaggio
news:425d70f1$0$79454$1472...@news.sunsite.dk...


 Ti ringrazio lo stesso, spero tu possa aiutarmi ancora.
Ciao, Jeff71.
    Davvero pensi che *nessuno* di quei thread faccia al caso tuo?... Allora
i casi sono due: o hai fatto un corso di lettura rapida o dovresti smettere
di pensare e incominciare a leggere. ;-) Ti concedo una terza possibilita`:
*io* non ho capito il tuo problema. Succede.
    Riguardo il codice (VBA, VB, VBS o quel che vuoi) non e` rilevante... Il
problema e` sempre uno ed uno solo: capire come funziona il modello degli
oggetti del "cosoX" col quale hai a che fare.
-- 


 vorrei agire direttamente da VB ...
Beh, da VB devi semplicemente usare il codice VBA nell'object model di 
Excel.
Avendo il codice VBA, si tratta solo di istanziare e distruggere 
correttamente la roba, per il resto è 'quasi' uguale.
Alberto
-- 
"C'è un Calvelli dentro ognuno di noi" (cit.) 

 grafico.
Tutto questo giro (pesantissimo per il sistema, e che per di più esige Excel 
sulla macchina), per non usare MsChart (che, fra l'altro, non mi sembra 
neppure complicatissimo...)?
Io ripenserei alla strategia.


 Alberto
dunque, non č che non ho pensato a MsChart, anzi, ci ho sbattuto la testa
per molti giorni.
Il problema che non riesco a superare sono ... le linee di tendenza.
In excel si possono applicare diversi tipi di linee di tendenza; a me serve
quella polinominale con Ordine 2.
Purtroppo, se non ho capito male (e cmq non sono riuscito a trovare info su
internet), con MsChart una volta applicata la "Regressione" alla Serie non
si puň aggiungere nulla. Quindi niente funzione polinominate con Ordine 2.
Per caso voi sapete come applicarla ?

 Per caso voi sapete come applicarla ?
Parti da questo presupposto: Excel usa, per i suoi grafici, un MSChart.
Quindi, se la si può applicare in Excel, la si può applicare in MSChart.
A questo punto diventa una ricerca nell'help del controllo MSChart. Io non 
ho mai applicato le linee di tendenza che tu vuoi usare, ma ne ho applicate 
altre e hanno sempre funzionato.
Ad esempio, per attivare la regressione semplice, uso questo:
MSChart1.Plot.SeriesCollection.Item(1).StatLine.Flag = VtChStatsRegression
ma nell'help c'è tutta l'enumerazione delle costanti, immagino che ci sia 
anche quella che ti interessa.
Ciao



Il problema è proprio questo, non riesco a visualizzare le proprietà
dell'oggetto OLE importato ... l'unica che ho visualizzato è la proprietà
ChartType che con il numero 63 mi cambia il grafico in lineare:
   OLE1.Format = "CF_TEXT"   ' Imposta il formato file su testo.
   OLE1.SizeMode = 2   ' Autosize.
   OLE1.CreateEmbed "", "MSGRAPH"
    Set oBook = OLE1.object
    Set oSheet = oBook.application
    oBook.chartType = 63  ' tipo grafico lineare. Il 53 è quello a barre.
Per il resto leggerò + attentamente i thread che mi hai citato, magari sarò
+ fortunato ..
Grazie ancora.


purtroppo, per quanto ho guardato io (compreso msdn sul sito microsoft) non
dice altro ... temo si fermi qui ...
sempre che qualcuno non mi smentisca ...


Effettivamente, in excel sarebbe
Chart.SeriesCollection(1).Trendlines.Add Type:=xlPolynomial, Order:=2 _
        , Forward:=0, Backward:=0, DisplayEquation:=False, DisplayRSquared:= 
_
        False
ma con MSChart non saprei applicarlo (soprattutto perchè con MSChart c'è una 
sola StatLine anzichè la collection TrendLines...)
