Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Servers
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 28-12-2004
rruffino rruffino is offline
Miembro
 
Registrado: dic 2004
Ubicación: Berrotaran, Cordoba - Argentina
Posts: 215
Poder: 20
rruffino Va por buen camino
Question Guardar archivo excel desde delphi

Hola amigos. Dispongo de un cuadro de Dialogo para guardar y una planilla en excel.Mi idea es poder utilizar la caja de dialogo para que el usuario indique el nombre y la ruta donde se guardara la planilla y que al hacer click en guardar esta se guarde automaticamente con los datos que ingreso el usuario. Les agradezco mucho su ayuda
Saludos, Román
Responder Con Cita
  #2  
Antiguo 28-12-2004
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.233
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Revisa ésta página, ahí tiene descritas las operaciones más importantes que se pueden hacer con una hoja de Excel desde Delphi (abrir, cerrar, grabar,...)

http://www.djpate.freeserve.co.uk/AutoExcl.htm

Otra opción es buscar "Excel Delphi" en los foros, y encontrarás bastantes mensajes sobre el tema.
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #3  
Antiguo 28-12-2004
rruffino rruffino is offline
Miembro
 
Registrado: dic 2004
Ubicación: Berrotaran, Cordoba - Argentina
Posts: 215
Poder: 20
rruffino Va por buen camino
Sigo igual!

Oye amigo, gracias por tu ayuda pero sigo sin poder guardar la planilla quwe creo. Yo lo hago mediante una variable Variant a al cual le asigno la creacion de un objeto ole. Luego le agrego un workbook y lleno el contenido de las celdas VariableOle.Libro.Celdas(x,y). Tengo una caja de dialogo para guardar de la que deberia tomar el nombre que el usuario ingresa y guardar la planilla generada previamente. He probado varias cosas que he encontraqdo en los foros pero no puede dar en la tecla. Todo lo demas sale bien, es decir que la planilla es creada correctamente, y puedo darle nombre con el cual la quiero guardar, pero lamentablemente no puedo guardarla.-
Espero puedas ayudarme
Responder Con Cita
  #4  
Antiguo 29-12-2004
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.233
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Pon el código delphi que utilizas, así podemos echarle un vistazo y revisarlo.
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #5  
Antiguo 29-12-2004
rruffino rruffino is offline
Miembro
 
Registrado: dic 2004
Ubicación: Berrotaran, Cordoba - Argentina
Posts: 215
Poder: 20
rruffino Va por buen camino
Aqui va el codigo

Bueno, tal como pediste te pongo el codigo a ver si puedes darme una mano. Espero puedas ayudarme y desde ya mil gracias.-

procedure TForm_excel.BitBtn_bajarClick(Sender: TObject);
var
Excel, Libro: Variant;
i: integer;
Nombre: string;
begin
try
Guardar_planilla.Execute;
if (Guardar_planilla.FileName<>'') then
begin

Excel:=CreateOleObject('Excel.Application');
Excel.Visible := True;
Nombre:=Guardar_planilla.FileName;
Excel.DisplayAlerts:=false;

//Comienzo a llenar las celdas
Excel.WorkBooks.Add();
Excel.WorkBooks[1].WorkSheets[1].Name := 'Reporte';
Libro := Excel.WorkBooks[1].WorkSheets['Reporte'];
DM.IBQuery_cob.SQL.Clear;
DM.IBQuery_cob.SQL.Add('select * from cobranza where periodo='+intToStr(DM.IBDataSet_periodoID_PERIODO.Value)+'order by fecha');
DM.IBQuery_cob.Open;
DM.IBQuery_cob.First;
i:=1;
while not (DM.IBQuery_cob.Eof) do
begin
Libro.Cells [i,1] := DM.IBQuery_cobFECHA.Value;
Libro.Cells [i,2] := DM.IBQuery_cobCONCEPTO.Value;
i:=i+1;
DM.IBQuery_cob.Next;
end;
DM.IBQuery_cob.Close;
//Acá es donde salta el error de que no soporta este metodo pero no hallo otro
Excel.SaveAs(Nombre,Null,Null,Null,false,false,xlNoChange,xlUserResolution,false,Null,Null,0);
end;
except
Excel.Quit;
showmessage('No se pudo crear el Objecto Excel.');
raise;
end;
end
;
Responder Con Cita
  #6  
Antiguo 29-12-2004
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.233
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Cita:
Empezado por rruffino
..Espero puedas ayudarme y desde ya mil gracias.

Código Delphi [-]
 ...
 //Acá es donde salta el error 
       Excel.SaveAs(Nombre,Null,Null,Null,false,false,xlNoChange,xlUserResolution,false,Null,Null,0);
En lugar de la línea que te da el error usa simplemente:

Código Delphi [-]
   Libro.SaveAs(NombreNuevo);
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #7  
Antiguo 03-01-2005
rruffino rruffino is offline
Miembro
 
Registrado: dic 2004
Ubicación: Berrotaran, Cordoba - Argentina
Posts: 215
Poder: 20
rruffino Va por buen camino
Wink Gracias

Neftali, gracias por la ayuda que me has dado, en ralidad se me soluciono el problema.
Román
Responder Con Cita
  #8  
Antiguo 01-02-2008
MARLON1 MARLON1 is offline
Miembro
 
Registrado: nov 2007
Posts: 118
Poder: 17
MARLON1 Va por buen camino
Hola

Cita:
Empezado por rruffino Ver Mensaje
Bueno, tal como pediste te pongo el codigo a ver si puedes darme una mano. Espero puedas ayudarme y desde ya mil gracias.-

procedure TForm_excel.BitBtn_bajarClick(Sender: TObject);
var
Excel, Libro: Variant;
i: integer;
Nombre: string;
begin
try
Guardar_planilla.Execute;
if (Guardar_planilla.FileName<>'') then
begin
Excel:=CreateOleObject('Excel.Application');
Excel.Visible := True;
Nombre:=Guardar_planilla.FileName;
Excel.DisplayAlerts:=false;

//Comienzo a llenar las celdas
Excel.WorkBooks.Add();
Excel.WorkBooks[1].WorkSheets[1].Name := 'Reporte';
Libro := Excel.WorkBooks[1].WorkSheets['Reporte'];
DM.IBQuery_cob.SQL.Clear;
DM.IBQuery_cob.SQL.Add('select * from cobranza where periodo='+intToStr(DM.IBDataSet_periodoID_PERIODO.Value)+'order by fecha');
DM.IBQuery_cob.Open;
DM.IBQuery_cob.First;
i:=1;
while not (DM.IBQuery_cob.Eof) do
begin
Libro.Cells [i,1] := DM.IBQuery_cobFECHA.Value;
Libro.Cells [i,2] := DM.IBQuery_cobCONCEPTO.Value;
i:=i+1;
DM.IBQuery_cob.Next;
end;
DM.IBQuery_cob.Close;
//Acá es donde salta el error de que no soporta este metodo pero no hallo otro
Excel.SaveAs(Nombre,Null,Null,Null,false,false,xlNoChange,xlUserResolution,false,Null,Null,0);
end;
except
Excel.Quit;
showmessage('No se pudo crear el Objecto Excel.');
raise;
end;
end;
hola:
me podrias ayudar? quiero hacer lo mismo que pero no tengo idea de como hacerlo, hasta ahora con la ayuda del foro solo puedo cargar datos de un archivo .xls en un dbgrid en mi aplicacion, pero lo que quiero hacer es que los datos que tengo en el archivo .xls se almacenen en la tabla cliente que ya tiene definidos los campos (clavecliente,nombre,dir,tel,...), espero ke me puedas hechar una mano uso delphi 6 y sql. estoy utilizando ADO, MIL GRACIAS
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

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


La franja horaria es GMT +2. Ahora son las 00:22:59.


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