Tengo el siguiente código:
Código Delphi
[-]
Arch := StrDir(DirDest.Text)+NombreArchivo+'.XLS';
ExcelApplication1.ActiveWorkbook.SaveAs(Arch,xlNormal, '', '', false, false,
xlNochange,xlUserResolution,False,EmptyParam,EmptyParam,
xlLocalFormat1,LCID);
If MostrarExcel.Checked Then
ExcelApplication1.Visible[0] := true
Else
ExcelApplication1.Quit;
Funcionaba perfectamente con los componentes de servers Office 2000 pero tuve que cambiarlos por los Office XP y a partir de ese momento no funcionó la línea del SaveAs (Incorporó un parámetro adicional (xlLocalFormat1 creo), antes funcionaba bien con la línea comentada)
Genera una excepción de Violación de Acceso en C88B5300
Alguien tiene un ejemplo con un ExcelApplication1.ActiveWorkbook.SaveAs que funcione.
PD. Si no uso el SaveAs el archivo se abre la hoja pero sin nombre (LibroX)
PD2. El comando SaveCopyAs funciona, pero al cerrar la hoja igual me pide el nombre.
PD3 El origen del problema es que con los componentes Office 2000 no abre el archivo con Office 2003 (Ole Error)