Delphi - Como envio el contenido de una tabla a Excel 2000

 
Vista:

Como envio el contenido de una tabla a Excel 2000

Publicado por Misael (51 intervenciones) el 04/01/2003 04:35:14
Como puedo enviar el contenido de una tabla de una base de datos a Excel 2000, ya que escribi un codigo de un ejemplo que tiene el libro de mastering delphi, pero a ultima instancia me provoca un error.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Como envio el contenido de una tabla a Excel 20

Publicado por Tatiana (4 intervenciones) el 06/01/2003 03:49:21
Hola Misael. Mira, primero declara las variables XlApp, XlBook, XlSheet y XlSheets de tipo Variant. Luego haces lo siguiente:
XlApp := CreateOleObject('Excel.Application');
XlBook := XlApp.WorkBooks.Add(xlWBATWorksheet);
XlSheet := XlApp.WorkBooks[1].Sheets[1];
XlSheets := XlApp.Sheets;
XlApp.Visible := True;
Lo anterior para abrir tu hoja en un libro de Excel, luego agregas en el form de tu aplicación un Query y un database en la paleta DataAcces, y haces lo siguiente:
Da click en el Database de tu form y en la propiedad DataBaseName coloca el nombre que desees. Ahora da click en el Query de tu form y en la propiedad DataBaseName selecciona el nombre que acabaste de colocar en el DataBaseName del Database. listo? bueno, ahora en la propiedad AliasName del Database coloca el nombre del Alias de tu base de datos. Ahora en la propiedad SQL del Query te vas a donde estan los puntos suspensivos y escribes la consultas que deseas que aparezca en el libro de Excel. Luego en la propiedad Connected del Database le das True y a la propiedad Active del Query tambien lo activas a True. Listo, ya está tu base de datos ahí... ahora falta meterla en las celdas de Excel... ahí va... ahora coloca lo siguiente en el código de algún botón que se llame Exportar ó lo que tu quieras:
while query1.Eof <> True do
begin
for i:= 0 to query1.FieldCount -1 do
begin
XlSheet.Cells[b,i+1] := query1.FieldList.Fields[i].AsString;
end;
b := b + 1;
query1.Next;
end;
Bueno, se supone que has debido de declarar b, i como Integer. Te recomiendo que inicialices
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Como envio el contenido de una tabla a Excel 20

Publicado por Tatiana (4 intervenciones) el 06/01/2003 03:54:41
Ah! Misael, se me olvidaba algo muy importante: la librería a utilizar. Mira si importas la librería de Excel desde Delphi, o.k., pero aqui tengo una menos complicada que de seguro te servirá para el ejercicio, escríbeme para enviártela, no pesa mucho... bye y suerte!!!!!!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar