Page 1 of 1
dati da excel di openoffice
Posted: Mon Nov 15, 2010 5:02 pm
by Romeo
CIao,
avevo recuperato in giro una programmino con il quale riuscivo a recuperare i dati da un foglio excel di Microsoft)
Ora pero' volevo recuperare i dati da un foglio excel di OpenOffice. Ma lo stesso programma non funziona.
Avete qualcosa su cui "spataccare" ?
Grazie
Romeo/Zingoni
Re: dati da excel di openoffice
Posted: Mon Nov 15, 2010 6:42 pm
by Enrico Maria Giordano
Qualche linea di codice:
Code: Select all | Expand
oSrvMan = CREATEOBJECT( "com.sun.star.ServiceManager" )
oDesktop = oSrvMan:CreateInstance( "com.sun.star.frame.Desktop" )
oDoc = oDesktop:LoadComponentFromURL( "private:factory/scalc", "_blank", 0, {} )
oSheet = oDoc:GetSheets():GetByIndex( 0 )
? oSheet:GetCellByPosition( 0, 0 ):GetString
EMG
Re: dati da excel di openoffice
Posted: Wed Nov 17, 2010 10:47 am
by Romeo
Grazie,
Ho provato ma canno da qualche parte.
Il mio file di excel di openoffice, che si chiama pippo.ods
Intanto dove fa messo nella tua procedura ?
Xche' io devo prendere dei dati da un foglio excel di openoffice GIA' ESISTENTE.
Romeo/Zingoni
Re: dati da excel di openoffice
Posted: Wed Nov 17, 2010 10:56 am
by Enrico Maria Giordano
Purtroppo non ho altri esempi. Guarda anche nel sorgente xbrowse.prg oppure cerca su Internet.
EMG
Re: dati da excel di openoffice
Posted: Thu Mar 10, 2011 6:33 pm
by Romeo
Salve,
partendo da un esempietto di EMG e manipolandolo, qualcosa ho combinato.
...
... minimizzando il problema:
oSrvMan = CREATEOBJECT( "com.sun.star.ServiceManager" )
oDesktop = oSrvMan:CreateInstance( "com.sun.star.frame.Desktop" )
aProp:={}
aadd(aProp,GetPropertyValue(oSrvMan,"Hidden",.t.))
oDoc = oDesktop:LoadComponentFromURL("file:///c:/pippo.ods", "_blank",0, aProp)
oSheet = oDoc:GetSheets():GetByIndex( 0 )
miocampo=oSheet:GetCellByPosition( 0, 0 ):GetString
.
.
.
fine programma
....
Se clicco ora su Open Office, non parte perche' e' rimasto aperto, anche se invisibile, con il file pippo.ods aperto.
Come si fa a chiuderle OpenOffice e quindi liberare anche pippo.ods con fivewin/harbour ?
Ho provato con quit(), end() ecc agendo su: osheet, oDoc, oDesktop, oSrvMan ma mi da sempre errore.
Grazie
Romeo ZIngoni