Hola, a ver si alguien me puede ayudar.
Estoy haciendo una aplicación que necesita tener un control exaustivo sobre excel. Cosas como quitar parte de los menús de Excel, añadirles otros nuevos, cargarle un fichero xla con multitud de funciones escritas en VB, etc. Mi aplicación se encarga de todo lo referente a abrir, guardar y cerrar los libros.
El caso es que ya tengo todo hecho y funcionando, pero necesito que excel se abra dentro de la ventana de mi aplicación y no como una ventana independiente.
He intentado con ActiveX pero no lo he conseguido (entre otras cosas necesito un objeto Excel.Application y no un OWC11.Spreadsheet).
Al final he intentado así:
hWndexcel := FindWindow(0,"Microsoft Excel - "+cfilenopath(clibro))
SetParent(hwndexcel,oWnd:hWnd) // Muestra Excel en la ventana de mi aplicación
Con esto excel permanece dentro de la ventana de mi aplicación, pero los dialogos que debería desplegar excel cuando se selecciona alguna opción de su menú, no se muestran y en su lugar la ventana excel se queda parpadeando, la opción del menú de excel seleccionada en naranja y excel deja de responder. Excel lo manejo con OLE.
Mi pregunta es si esto es posible o estoy desvariando.