Como guardar un archivo de excel 2007 desde VFP

Quisiera saber como guardar un archivo de excel 2007 desde visual fox pro ya lo he echo para excel 2003 con el siguiente código:
        objexc = CreateObject("excel.application")
        Objexc. Application. Workbooks. Save
objexc. Application. ActiveWorkbook. Close
objexc. Application. Quit
pero cuando pongo esto para guardar un 2007 me sale el siguiente error:
"codigo de excepcion OLE IDispatch 0 de microsoft office excel: no se puede obtener la propiedad Save de la clase Workbook."

2 respuestas

Respuesta
Prueba instalando el paquete de compatibilidad office 2007, lo puedes bajar de
http://www.microsoft.com/downloads/details.aspx?displaylang=es&familyid=941B3470-3AE9-4AEE-8F43-C6BB74CD1466
ahor yo uso la siguiente forma para crear los archivos en excel
    oHoja=CREATEOBJECT("Excel.application")
    OHoja. Workbooks. Add()
... Procesa los datos
    oHoja.Visible = .T.
Después de esto el usuario decide si lo guarda o simplemente sale
Hola lo que pasa es que necesito que no le pida confirmación al usuario necesito que el grabe solo y luego lo cierre y necesito es guardarlo en 2007 por que en 2003 ya lo ise pero con 2007 no me sirve.
Muchas gracias por su atención.
¿Instalaste el paquete de compatibilidad miscro$oft?, actualiza varios errores del office 2007 entre ellos el acceso de archivos 2007 desde office 2003 incluye la automatización de archivos.
Si ya baje el paquete de compatibilidad y sigue saliendo el mismo error.
Entonces baja de este link unas funciones para trabajar con excel2007
http://www.megaupload.com/?d=8GGAX4VK
Ya baje el archivo y lo revise pero no encontré nada que me ayudara con mi problema de guardar el excel. De todas formas muchas gracias por tu colaboración y atención.
muchas gracias por su atencion pero probando y probando halle este codigo q me sirvio   
    objexc.Application.DefaultSaveFormat = 39
    objexc.application.ActiveWorkbook.saved = .t.
    objexc.Application.DisplayAlerts = .f.
    objexc.application.activeworkbook.saveas(excfile)
    objexc.application.activeworkbook.close
    objexc.application.quit
pero de todas maneras muchas gracias por la atencion prestada.
Respuesta
Has lo mismo en excel graba un macro y luego edítala para ver que comando es que necesitas
Hola muchas gracias por tu atención, pero no se muy bien como hacer el macro en excel 2007.
Dale una miratita a como se graba en excel 2007
ActiveWorkbook.SaveAs Filename:= _
        "C:\Documents and Settings\Booss\Mis documentos\Libro1.xlsx", FileFormat:= _
        xlOpenXMLWorkbook, CreateBackup:=False
y prueba con tu codigo.
muchas gracias por su atencion pero probando y probando halle este codigo q me sirvio   
    objexc.Application.DefaultSaveFormat = 39
    objexc.application.ActiveWorkbook.saved = .t.
    objexc.Application.DisplayAlerts = .f.
    objexc.application.activeworkbook.saveas(excfile)
    objexc.application.activeworkbook.close
    objexc.application.quit
pero de todas maneras muchas gracias por la atencion prestada.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas