2011-11-03 5 views

risposta

4

Con qualcosa del genere, se le vostre esigenze sono relativamente semplici, ho trovato che è più semplice trovare/scrivere un eseguibile da riga di comando che estrae semplicemente un csv dal file xls. Quindi invochi quell'eseguibile da haskell e procedi con il suo output da lì.

+1

Sono d'accordo per piccoli compiti con un solo foglio. Ma a volte ho dati condivisi tra più fogli. La mia soluzione attuale è scrivere un vbscript excel. Ma mi piacerebbe ora utilizzare solo un exe haskell piuttosto che utilizzare diverse applicazioni. –

+0

Quello che sto suggerendo è un eseguibile a singolo scopo che scarica semplicemente un dato foglio da un dato file excel (entrambi specificati sulla linea cmd). Quindi puoi racchiuderlo in una singola chiamata haskell che fornisce un file excel e un foglio restituisce tutti i dati analizzati. Quindi è come usare la com automation eccetto passare attraverso l'indiretto di un ulteriore eseguibile. L'unico vantaggio è quanto è più semplice farlo. L'unico svantaggio è che ora hai bisogno di due eseguibili invece di uno (ma devi solo eseguire direttamente quello). – sclv

+0

Grazie. Con il tuo suggerimento ho trovato alcuni cmd line come [http://www.softinterface.com/Convert-XLS/Features/Convert-XLS-To-CSV.htm] da affrontare e questo mi sta dando altri percorsi da esplorare. Ma la mia domanda è più sulla comprensione del pacchetto COM. l'esempio fornito su [http://haskell.forkio.com/com-examples] non è sufficiente per usarlo con Excel o Word. Quindi, se qualcuno ha un frammento di Excel da condividere, potrebbe essere interessante scavare. –

2

Ora c'è anche xlsx su Hackage (per il formato xlsx Office Open XML), anche se io porto ho ancora provato da solo