Ir al contenido


Foto

Problema para guardar archivo excel en disco


  • Por favor identifícate para responder
5 respuestas en este tema

#1 Mechis

Mechis

    Newbie

  • Miembros
  • Pip
  • 2 mensajes

Escrito 11 septiembre 2013 - 07:09

Buenos Dias,

Estoy trabajando con Delphi 5 y tengo un archivo de excel que genero desde la aplicacion, hasta aqui todo perfecto; el problema se me presenta al momento de querer guardarlo en disco.

Tengo predefinida la ruta fisica donde deseo guardar y uso el siguiente código:



delphi
  1. oXL := CreateOleObject('Excel.Application');
  2. oWB := oXL.Workbooks.Add();
  3. .
  4. .
  5. .
  6.  
  7. oXL.Visible := True;
  8. oXL.UserControl := True;
  9.  
  10. oWB.Saveas(FileName :=ruta +'\Archivo_' + Mes + '.xls',AddToRecentFiles := False);


El error lo arroja al ejecutar el SaveAS, dice OLE error 800A03EC.
La variable ruta tiene la ruta correcta, ya lo verifique

Gracias por su ayuda, Saludos
  • 0

#2 poliburro

poliburro

    Advanced Member

  • Administrador
  • 4.945 mensajes
  • LocationMéxico

Escrito 11 septiembre 2013 - 07:44

No se , pero me parece que es un problema con la instalación de excel. El equipo que te genera error tiene instalado office?
  • 0

#3 Mechis

Mechis

    Newbie

  • Miembros
  • Pip
  • 2 mensajes

Escrito 11 septiembre 2013 - 07:47

Si, si tiene office instalado..

Probando y probando resolvi, quedo de la siguiente manera:



delphi
  1. 10.oWB.Saveas(ruta +'\Archivo_' + Mes + '.xls');



De todos modos muchas gracias ;)
  • 0

#4 bcp9520

bcp9520

    Member

  • Miembros
  • PipPip
  • 18 mensajes

Escrito 11 septiembre 2013 - 08:03

Mechis... solo como un dato. Hace unos meses se me presento un problema similar en algunos PC en los que instalaba la aplicación y era que dentro del nombre del archivo utilizaba un "\". El problema era la configuración regional de algunos PC, es decir el formato de fecha se utilizaba como mm/dd/aaaa y por alguna razón generaba un error, con los pc configurados como mm-dd-aaaa no habia problema.

Espero que le sea util a alguien.
Saludos.
  • 0

#5 poliburro

poliburro

    Advanced Member

  • Administrador
  • 4.945 mensajes
  • LocationMéxico

Escrito 11 septiembre 2013 - 08:16

Gracias por compartir la solución
  • 0

#6 Sergio

Sergio

    Advanced Member

  • Moderadores
  • PipPipPip
  • 1.092 mensajes
  • LocationMurcia, España

Escrito 12 septiembre 2013 - 03:28

El seguindo parámetro de saveas es el formato a utilizar, si no pones nada no te da error y usa el "por defecto", pero puedes forzarlo si quieres:



delphi
  1.   // 51 = xlOpenXMLWorkbook (without macro's in 2007-2010, xlsx)
  2.   // 52 = xlOpenXMLWorkbookMacroEnabled (with or without macro's in 2007-2010, xlsm)
  3.   // 50 = xlExcel12 (Excel Binary Workbook in 2007-2010 with or without macro's, xlsb)
  4.   // 56 = xlExcel8 (97-2003 format in Excel 2007-2010, xls)
  5.   // More on this here: [url=http://www.rondebruin.nl/saveas.htm]http://www.rondebruin.nl/saveas.htm[/url]
  6.   Document.Saveas(strName, 56);


  • 0




IP.Board spam blocked by CleanTalk.