PDA

Ver la Versión Completa : Abrir un Archivo xls


javicho_villa
10-04-2006, 16:12:22
Hola a todos:

Gracias por la atencion prestada, tengo un problemita tengo que jalar datos de un archivo .xls (excel) a un StringGrid. este proceso en bien frecunte. Lei algunos hilos pero no logro solucionar mi problema.

Si alguien pudiera ayudarme se lo agradeciria muchisimo.

Saludos,

Javier Villa.

Bicho
10-04-2006, 16:16:49
Y el problemas es???

Es que mi bola mágica no funciona ahora mismo.

Saludos

P.d: jalar en España es comer, no se como te sentirá comerte unos datos que proviene de Excel :D

Neftali [Germán.Estévez]
10-04-2006, 16:17:56
Puedes abrirlo vía Automatización, o lo que creo que es más sencillo, utilizando ADO.
Si configuras correstamente la conexión puedes leer la hoja de excel como si fuera un TTable. Aquí (http://www.delphizine.com/newsletterarticle/2004/08/di200408rs_l/di200408rs_l.asp) puedes ver cómo hacerlo.

javicho_villa
10-04-2006, 16:44:03
gracias por las respuestas, prodrian si no fuera mucha molestia que componentes agrego a mi form y un poquito de codigo para ver como utilizarlas
gracias

Neftali [Germán.Estévez]
10-04-2006, 17:07:44
¿Has leído la página correspondiente al link que te he puesto?

En la parte inforior (al final del artículo) se lee:
The files accompanying this article are available for download (http://www.delphizine.com/NewsletterArticle/DownloadFile.asp?ArticleID=di200408rs_l).

¿?¿?¿?¿?¿

javicho_villa
10-04-2006, 17:53:52
Gracias, lei el articulo pero creo que es mas que nada cuando tu abres un archivo que el contenido esta en forma de una tabla, lo que yo necesito es acceder a celdas especificas y extraer esa informacion a un StringGrid, es por eso que tengo los problemas.

Saludos,

Javier Villa.

Neftali [Germán.Estévez]
10-04-2006, 18:05:42
En ese caso utiliza automatización (http://www.djpate.freeserve.co.uk/AutoExcl.htm#HowDoI).

Bicho
10-04-2006, 18:08:27
Entonces no tienes nada más que recorrer la tabla una vez ya la tengas cargada con los datos del XLS y pasar los datos al StringGrid

Debes averiguar cuantas columnas tendrá y a partir de allí


//recuerda cada vez que entres en esta función debes tener vaciado el StringGrid
Table1.open;
for x := 0 to Table1.Recordcount-1 do begin
Stringgrid1.Cells[1, x] := Table1.FieldByName('Campo1').AsString;
Stringgrid1.Cells[2, x] := Table1.FieldByName('Campo2').AsString;
// y así hasta cuantas columnas tengas
StringGrid1.Rowcount := StringGrid1.Rowcount + 1;
table1.Next;
end;
Table1.Close;


Espero te sirva.

Saludos