Hola:
Tengo un problema con objetos de un proyecto VBA, y es que cuando borro un formulario con la siguiente orden:
Dim vbCom As Object
Set vbCom = Application.VBE.ActiveVBProject.VBComponents
vbCom.Remove VBComponent:=vbCom2.Item("nombredelobjeto")
posteriormente no puedo crear otro con el mismo nombre hasta que no guardo el proyecto, pero no se como guardarlo desde una macro y por otro lado, si guardo el proyecto, estoy guardando tambien el fichero de excel y no querria hacerlo.
Ahi alguna solucion a esto?
Muchas gracias
Un proyecto VBA de Excel siempre está asociado a un libro que lo contiene.
Puedes guardar las piezas por separado, por ejemplo exportando los módulos a archivos .bas, pero el proyecto completo viaja con el libro de excel.
Respecto del error del nombre ya utilizado, no es tu código el que lo produce, porque lo puedes reproducir incluso a mano. Parece que VBA mantiene una especie de historial con esos nombres en su colección vbcomponents.
En la página de microsoft dicen que el este error se produce al intentar cambiar un proyecto VBA dentro de un documento, ¡vaya! justamente lo que queremos hacer.
miraré a ver si hay alguna manera de reiniciar estas colecciones sin guardar el archivo.
ante la duda, siempre puedes utilizar la numeración de los items en vez de ponerles nombres.
------
Ya sé Excel, pero necesito más
------
Ya sé Excel, pero necesito más.