cerrar objeto de excel
He consultado varias páginas en las que usan una misma misma instrucción xa cerrar excel (xlapp.quit), pero en tiempo de ejecución me dice "Project raised... class EOleError with message 'Method 'Quit' not supported in automation object'...". He probado varias cosas pero no consigo cerrar Excel y no sé pq no puedo obtener ayuda al respecto en el help de delphi.
Este es el código sencillo que uso: var XLApp: Variant; ... código de un botón: XLApp:= CreateOleObject('Excel.Application'); XLApp.Visible := false; XLApp.Workbooks.Add(xlWBatWorkSheet); XLApp.Workbooks[1].WorkSheets[1].Name := 'Delphi Data'; XLApp := XLApp.Workbooks[1].WorkSheets['Delphi Data']; for i := 1 to 10 do XLApp.Cells[i, 1] := i; XLApp.SaveAs('c:\temp2.xls'); código formdestroy: if not VarIsEmpty(XLApp) then begin XLApp.Quit; XLAPP := Unassigned; end; y en ese XLApp.Quit es donde siempre da error :-S Alguna idea? Entre otras muchas webs he visto esta de borland: http://community.borland.com/article...,10126,00.html pero veo que hace lo mismo que yo :( Incluso he leido aqui: http://community.borland.com/article...,10127,00.html Un apunte referente a que a CreateOleObject hay que pasarle la cadena exacta, en caso contrario dará error. He seguido los pasos, he mirado como dice en el registro y he cambiado el CreateOleObject por "XLApp:= CreateOleObject('Excel.Application.11');" que es lo que indica mi registro, pero seguimos con error en tiempo de ejecución en el .quit. Gracias a todos de antemano. Saludos |
Creo recordar haber respondido esto antes pero eso fue hace mucho antes, yo uso algo asi y nada de excepciones:
Código:
//Para abrir excel |
Hola. Gracias por contestar. Probaré a traducirlo de Borland C a Delphi. Solo una pregunta, ¿que significa el "<<"?
Saludos y gracias de antemano |
Oooops!!! peqeño detalle :D, es un operador sobrecargado q indica la inclusión de un valor a un objeto, pero concentrate en el " xlApp.Exec(Procedure("Quit"));" , o sea... trata de ejecutarlo dentro del Procedure, si necesitas como sea de un operador así a como de lugar ....entonces,.....este..............bueno.....habra q explorar las propiedades del variant en delphi...deberian ser las mismas......................sino...........pues invoca a un Delphiniano.......q mas te podria decir?:o
|
Gracias. Mañana después de haber dormido y estando a buenas con el compilador volveré a probar jejeje.
Ya os contaré. Saludos y gracias |
La franja horaria es GMT +2. Ahora son las 15:19:10. |
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