Buenas:
Mi problema es el siguiente:
Tengo una aplicación en Excel que comunica con una base de datos SQL server 2005. Esta hoja de calculo abre una conexión (ADO) con sigo misma e inserta datos desde las hojas a la base de datos. La sentencia es algo así como:
INSERT INTO tblRH_ResourceDescription IN ''[ODBC;Driver={SQL Server};Server=.\SQLEXPRESS;Database=CPM] SELECT [Activity_Id], [Exclude], [Activity], [Description], [Group], [Phase], [Country], [Workforce], [Resource Level], [Bill Code], [Cost Rate/Salary], [Benefits], [Services GSS Load], [PD&S Load], [GS/Country Load], [Available Hours], [Overtime (%)], [Contingency (%)] FROM [RH.SQL.ALL] WHERE [Activity_ID] <= 190 ORDER BY [Activity_ID]
Hago un insert indicando el driver de SQL y la base de datos que utilizo, pero la conexión la abro con la propia hoja de Excel.
Esto me funciona pero únicamente cuando tengo una instancia de Excel abierta. Si tengo más de una, cuando abro la conexión con ADO en la hoja de Excel, este crea un nuevo libro de excel (solo lectura) que es una copia de si mismo en la misma ruta y los datos cuando pulso el botón los extrae de esta copia.
Me gustaría saber porque pasa esto y si hay forma de corregirlo. Si no se puede como podría hacer lo mismo pero de otra forma.
Un saludo y muchas gracias