Saltar al contenido
View in the app

A better way to browse. Learn more.

Ayuda Excel

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

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

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.

 

 

Featured Replies

No hay posts para mostrar

Archivado

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

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.