Saltar al contenido

Utilizar código de un libro en los eventos de una hoja de otro libro


Jesúsgl

Recommended Posts

publicado

Hola a todos. Tengo dos libros de excel, uno llamado Código y otro llamado Control. Estoy intentando escribir todo el código que puedo necesitar en el primero de ellos. En el segundo escribo el código básico que llamará a "Código" de la siguiente manera:

En el módulo 1 del libro "Control" he escrito

Sub auto_open()
Application.ScreenUpdating = False
Workbooks.Open ThisWorkbook.Path & "\pruebacontrol\Código.xlsm"         ' De este modo abro el libro "Código" en segundo plano
Application.Run "'Código.xlsm'!abrir"                                                                     ' llamo a la macro que abre un formulario para elegir la acción a ejecutar.
End Sub

------------------------- Hasta aquí funciona bien--------------------------------------------

De este modo, utilizando "Application.Run..." llamo a los prodecimientos o macros que necesito, de modo que, en el libro control, el código que escribo es mínimo y difícilmente tendré que cambiarlo, ya que siempre hace referencia al del libro "Código", con lo que, si tengo que cambiar algo, será en éste último.

Ahora bien, en la hoja 3 del libro "Control" quiero utilizar el evento "Worksheet_Change" con un código bastante extenso, por lo cual querría poner el código a utilizar en el libro "Código" y llamarlo del mismo modo que hago con otros procedimientos, algo así como:

Private Sub Worksheet_Change(ByVal Target As Range)
   Application.Run "Código.xlsm!cambiohoja3")     ' donde cambiohoja3 sería un módulo del libro "Código" con todo el código que quiero que se ejecute

End Sub

Pero, en este caso, no funciona el método Application.Run y me lanza el mensaje "Error 1004 en tiempo de ejecución. No se puede ejecutar la macro "Código.xlsm!cambiohoja3". Puede que la macro no esté disponible en este libro o que se hayan desactivado todas las macros".

¿Podéis ayudarme? ¿Es que no es posible hacer lo que pretendo o es que lo estoy haciendo mal?

Gracias a todos por vuestro tiempo y vuestra ayuda.

 

 

Archivado

Este tema está ahora archivado y está cerrado a más respuestas.

×
×
  • Crear nuevo...

Información importante

Echa un vistazo a nuestra política de cookies para ayudarte a tener una mejor experiencia de navegación. Puedes ajustar aquí la configuración. Pulsa el botón Aceptar, si estás de acuerdo.