colde
2006-11-13 15:43:05 UTC
Ciao a tutti,
devo poter leggere la prima colonna di un file xls, associare un dato
per ogni campo e salvarlo in un file txt.
Il file xls viene già letto dall'applicazione tramite ADOQuery ma qui
avrei un problema per riuscire a capire quale cella è stata letta
l'ultima volta. La colonna che contiene i dati che mi servono sono la
prima, la colonna A; dato che il file non lo leggo interamente in
un'unica volta ma in più volte, devo avere una sorta di "segnalibro"
che mi indichi da dove ripartire con la lettura dei dati da xls.
E' possibile?
ADOQuery1.ConnectionString := 'Provider=Microsoft.Jet.OLEDB.4.0;Data
Source=C:\Documents and
Settings\Colde\Desktop\WT_Ver_NODETECT\WT2006_Scarico dati
passivo_WT\DataImport\BIPPAGGIO.xls;Extended Properties=Excel 8.0;';
ADOQuery1.SQL.Text := 'select * from [FOGLIO1$]';
ADOQuery1.Open();
ShowMessage(ADOQuery1.Fields[0].Value);
ADOQuery1.Next;
In questo modo ogni volta che accede al file xls per la lettura riparte
sempre dal primo campo. Ho pensato di leggere tutti i dati da xls per
memorizzarli in un array ma non posso farlo perchè i campi da
memorizzare sono sempre oltre i 3000.
Come posso fare? GRAZIE
P.S.
ho provato ad installare i componenti della TurboPower (OfficePartner)
ma per una serie di errori che ho incontrato non sono riuscito a
terminare l'installazione.
devo poter leggere la prima colonna di un file xls, associare un dato
per ogni campo e salvarlo in un file txt.
Il file xls viene già letto dall'applicazione tramite ADOQuery ma qui
avrei un problema per riuscire a capire quale cella è stata letta
l'ultima volta. La colonna che contiene i dati che mi servono sono la
prima, la colonna A; dato che il file non lo leggo interamente in
un'unica volta ma in più volte, devo avere una sorta di "segnalibro"
che mi indichi da dove ripartire con la lettura dei dati da xls.
E' possibile?
ADOQuery1.ConnectionString := 'Provider=Microsoft.Jet.OLEDB.4.0;Data
Source=C:\Documents and
Settings\Colde\Desktop\WT_Ver_NODETECT\WT2006_Scarico dati
passivo_WT\DataImport\BIPPAGGIO.xls;Extended Properties=Excel 8.0;';
ADOQuery1.SQL.Text := 'select * from [FOGLIO1$]';
ADOQuery1.Open();
ShowMessage(ADOQuery1.Fields[0].Value);
ADOQuery1.Next;
In questo modo ogni volta che accede al file xls per la lettura riparte
sempre dal primo campo. Ho pensato di leggere tutti i dati da xls per
memorizzarli in un array ma non posso farlo perchè i campi da
memorizzare sono sempre oltre i 3000.
Come posso fare? GRAZIE
P.S.
ho provato ad installare i componenti della TurboPower (OfficePartner)
ma per una serie di errori che ho incontrato non sono riuscito a
terminare l'installazione.