Hola a todos.
Tengo un problema que me trae loco y no se como resolver:
Tengo una aplicación que abre libros excel y el usuario puede modificarlos. Es mi aplicación la que se encarga de guardarlos. Pero me ocurre que cuando el usuario está en modo edicción de una celda, las propiedades y los metodos del objeto excel no están disponibles:
oexcel := CreateObject('Excel.Application')
oexcel:WorkBooks:Open('C:\LibroA.xls')
oexcel:visible(.t.)
Si el usuario no está en modo edicción lo siguiente no da error:
oexcel:ActiveWorkBook:Save()
Sin embargo si está en modo edicción fivewin me muestra el error:
Error description: Error Excel.Application/1
Unknown error: ACTIVEWORKBOOK
Ya se que mientras el usuario está editando una celda no debería seleccionar en el menú de mi aplicación guardar el libro, pero los usuarios son como son y queda muy mal que el programa les tire un error y se cierre, encima sin haber guardado y luego salga toda la retaila de ventanas de enviar a microsoft y se abra excel con el libro que se quedó colgado.
He probado de todo, valtype(oexcel) devuelve 'O', pero valtype(oexcel:ActiveWorkBook) devuelve el mismo error si está en modo edición.
Si pudiera acceder a:
oexcel:CommandBars('Worksheet Menu Bar'):Controls('Archivo'):Controls('Nuevo...'):Enabled()
podría detectarlo, puesto que el menu de Archivo->Nuevo se deshabilita cuando entras en modo edicción, pero como ya he dicho cualquier llamada al objeto excel emite un error. Por lo que he visto por ahí la cosa está complicada. ¿ Alguna idea ?