Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 15-02-2007
mrmanuel mrmanuel is offline
Miembro
 
Registrado: may 2003
Posts: 135
Poder: 21
mrmanuel Va por buen camino
Pasar de TQuery a Excel?

hola a todos,

quisiera pasar unos datos que tengo en una TQuery a un fichero excel.
alguien me puede decir como?

gracias.

Tengo Delphi 5,
los datos los obtengo de tablas de tipo DBase.
__________________
Un Saludo a todos/as
Responder Con Cita
  #2  
Antiguo 15-02-2007
Avatar de jhonny
jhonny jhonny is offline
Jhonny Suárez
 
Registrado: may 2003
Ubicación: Colombia
Posts: 7.058
Poder: 29
jhonny Va camino a la famajhonny Va camino a la fama
Hay muchas maneras pero una es, Con los componentes de nuestro amigo Delphi.com.ar que estan alojados en la pagina http://www.delphi.com.ar
__________________
Lecciones de mi Madre. Tema: modificación del comportamiento, "Pará de actuar como tu padre!"

http://www.purodelphi.com/
http://www.nosolodelphi.com/
Responder Con Cita
  #3  
Antiguo 15-02-2007
Avatar de jhonny
jhonny jhonny is offline
Jhonny Suárez
 
Registrado: may 2003
Ubicación: Colombia
Posts: 7.058
Poder: 29
jhonny Va camino a la famajhonny Va camino a la fama
Tambien puedes ver el hilo http://www.clubdelphi.com/foros/showthread.php?t=25552
__________________
Lecciones de mi Madre. Tema: modificación del comportamiento, "Pará de actuar como tu padre!"

http://www.purodelphi.com/
http://www.nosolodelphi.com/
Responder Con Cita
  #4  
Antiguo 23-02-2007
mrmanuel mrmanuel is offline
Miembro
 
Registrado: may 2003
Posts: 135
Poder: 21
mrmanuel Va por buen camino
Ok, le hecho un vistazo.

La primera opcion, del compañero "www.delphi.com.ar", tiene buena pinta, pero la segunda opcion hace justo lo contrario de lo que yo quiero, pasar de una tabla a excel y no como indica que es de excel a tabla.


¿Hay algun manual de los componentes de www.delphi.com.ar?

gracias.
__________________
Un Saludo a todos/as
Responder Con Cita
  #5  
Antiguo 23-02-2007
Mr poo Mr poo is offline
Registrado
 
Registrado: feb 2007
Posts: 6
Poder: 0
Mr poo Va por buen camino
ke tal mrmanuel, yo maneje algo parecido con el delphi 7 y sql server ai te mando el codigo para ke lo chekes a ver si te sirve, yo paso lo que tengo de un adoquery a un excel, ai te lo dejo para ke lo veas a ver si te sirve:

Código Delphi [-]
 
procedure Tbusquedas.botonexcelClick(Sender: TObject);
var
  fila:Integer;
begin
  ExcelApplication1.Connect;
  ExcelWorkBook1.ConnectTo(ExcelApplication1.Workbooks.Add(EmptyParam,0));
  ExcelWorkSheet1.ConnectTo(ExcelApplication1.Sheets[1] as _WorkSheet);
  adoquery2.First;
//este es el encabezado ke aparece en la hoja de excel en la columna 1 fila 1...
  ExcelWorkSheet1.Cells.Item[1,1].Value := 'REPORTE DE REINCIDENCIAS EN EL PERIODO '+incidendesde.Text+' A '+incidenhasta.Text+' ';
//aqui le ponemos los nombres de las columnas ke kieras los ponemos negritas y ponemos el tamaño...
  ExcelWorkSheet1.Cells.Item[2,1].Value := 'RFC';
  ExcelWorkSheet1.Cells.Item[2,2].Value := 'PLAZA';
  ExcelWorkSheet1.Cells.Item[2,3].Value := 'NOMBRE';
  ExcelWorkSheet1.Cells.Item[2,4].Value := 'DESDE';
  ExcelWorkSheet1.Cells.Item[2,5].Value := 'CHEQUE';
  ExcelWorkSheet1.Range['A1','E2'].Font.Bold := True;
  ExcelWorkSheet1.Range['A1','A1'].ColumnWidth := 16;
  ExcelWorkSheet1.Range['B1','B1'].ColumnWidth := 23;
  ExcelWorkSheet1.Range['C1','C1'].ColumnWidth := 60;
  ExcelWorkSheet1.Range['D1','D1'].ColumnWidth := 8;
  ExcelWorkSheet1.Range['E1','E1'].ColumnWidth := 8;
//fila empieza en 3 por ke en la primera va el encabezado y en la segunda los nombres de las filas
  Fila:=3;
//y ya aki le ponemos los datos ke tiene el adoquery desde el principio hasta el ultimo registro...
  while not adoquery2.Eof Do
    with ExcelWorkSheet1.Cells Do Begin
      Item[Fila,1].value := adoquery2.FieldValues['rfc'];
      Item[Fila,2].value := adoquery2.FieldValues['plaza'];
      Item[Fila,3].value := adoquery2.FieldValues['nombre'];
      Item[Fila,4].value := adoquery2.FieldValues['desde_pag'];
      Item[Fila,5].value := adoquery2.FieldValues['cheque'];
      Inc(Fila);
      adoquery2.Next;
    end;
    showmessage('REPORTE GENERADO!');
    ExcelApplication1.Visible[0]:=true;
    ExcelWorkSheet1.Disconnect;
    ExcelWorkBook1.Connect;
    ExcelApplication1.Connect;
end;
donde ExcelApplication1,ExcelWorkBook1 y ExcelWorkSheet1 son componentes que aparecen en la paleta de server (bueno al menos en el delphi 7), obiamente el adoquery ya tiene una consulta antes ke genere y ya despues puse otro boton donde ya genera el archivo en excel...

Espero te sirva de algo..saludos......

Última edición por marcoszorrilla fecha: 24-02-2007 a las 00:26:42.
Responder Con Cita
  #6  
Antiguo 23-02-2007
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
mrmanuel, no creo que haga falta un manual para usar las componentes de Federico, realmente son muy sencillas y tienen dos ventajas muy importantes:
  • No requieren tener instalado Excel
  • Son muy rápidas

Esto es así porque crean el archivo directamente utilizando el formato BIFF.

Un ejemplo de uso:

Código Delphi [-]
// Este enlace lo puedes hacer con el inspector de objetos
DataToXls1.DataSet := Query1;

// El DataSet debe estar abierto
Query1.Open;

// Exportamos  el archivo
DataToXls1.SaveToFile('datos.xls');

Como ves, es sencillísimo.

Por defecto, te exportará todas las columnas en el orden natural del dataset, pero puedes especificar cuáles columnas exportar mediante su editor de columnas (doble clic sobre la componente o sobre la propiedad Columns en el inspector de objetos) que es similar al editor de columnas de un DBGrid.

Cada columna tiene su propiedad DataField para especificar el campo a usar y algunas propiedades visuales como el ancho, tipo de datos y título aunque no me queda claro en qué unidades está el ancho ya que debo poner medidas muy grandes.

De más está decir que puedes colocar las columnas en el orden que quieras.

Puedes importar las columnas del mismo dataset usando la opción "Retrieve Fields" del menú contextual de la componente. Al igual que con un DBGrid, debes tener abierto el dataset. También es posible importar las columnas que ya tengas en un DBGrid con la opción "Retrieve TDBColumns".

// Saludos
Responder Con Cita
  #7  
Antiguo 09-03-2007
mrmanuel mrmanuel is offline
Miembro
 
Registrado: may 2003
Posts: 135
Poder: 21
mrmanuel Va por buen camino
ok, gracias a todos,

no he teneido tiempo de probar nada, pero me lio lo antes posible y lo comento.

gracias nuevamente
__________________
Un Saludo a todos/as
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Pasar de QRP a Excel Langdon Impresión 4 09-07-2006 03:54:54
Pasar imagen a excel Ambar Servers 9 25-01-2006 20:29:59
Pasar de Excel a Delphi CamiloU Conexión con bases de datos 2 05-01-2006 14:03:24
Cómo exportar una tabla (TTABLE o TQUERY) completa a Excel vick Conexión con bases de datos 1 27-09-2005 09:41:35
Pasar parametros a SQL por medio DE Tquery JELIRM SQL 9 29-06-2005 20:51:25


La franja horaria es GMT +2. Ahora son las 22:42:25.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi