Curso Excel VBA y Macros – Cap. 29 – Cómo ejecutar macros guardadas en otros archivos de Excel

<<CURSO COMPLETO EN YOUTUBE>>

En este video tutorial veremos la manera de poder ejecutar macros que están guardadas en otro archivo de Excel. Veremos dos maneras de poder ejecutarlas:

  • Abrir el archivo y llamar sus macros.
  • Crear una referencia hacia el archivo que contiene las macros que deseamos ejecutar.

También veremos en qué momentos usamos la instrucción Call y en qué momento el método Run.

Ver video Capítulo 29 Excel VBA & Macros

Suscríbete al canal de EXCELeINFO en YouTube para aprender más de Excel y macros.

Macro para convertir texto a mayúsculas

Como deseamos mandar llamar macros de un archivo a otro, lo primero que debemos de tener es un archivo que aloje la macro para cambiar un rango seleccionado a mayúsculas. Crearemos el archivo y le pondremos de nombre Convertir a MAYUSC.xlsm.

En este archivo guardaremos la siguiente macro:

Option Explicit

'EXCELeINFO
'MVP Sergio Alejandro Campos
'http://www.exceleinfo.com
'https://www.youtube.com/user/sergioacamposh
'http://blogs.itpro.es/exceleinfo

Sub MAYUSCULAS()

Dim Celda As Range

For Each Celda In Selection

    Celda.Value = VBA.UCase(Celda.Value)

Next Celda

End Sub

Mandar llamar macros de otro archivo usando Run

Una vez que tenemos el archivo con la macro para convertir a mayúsculas, tenemos otro archivo en el cual tendremos una macro que abrirá dicho archivo y ejecutaremos la macro MAYUSCULAS.

Para ejecutar la macro guardada en otro archivo, primero debemos tenerlo abierto, la siguiente macro realizará los siguientes pasos:

  • Abrirá el archivo Convertir a MAYUSC.xlsm.
  • Ejecutará la macro MAYUSCULAS usando el método Run.
  • Cerrará el archivo.
Option Explicit

Sub EjecutarMacroOtroArchivo()

Dim Nombre As String

Workbooks.Open "C:\Users\Sergio Campos\Documents\Convertir a MAYUSC.xlsm"

Nombre = ActiveWorkbook.Name

Application.Workbooks("029 - Ejecutar macros o procedimientos de otros archivos - EXCELeINFO.xlsm").Activate

Application.Run "'Convertir a MAYUSC.xlsm'!MAYUSCULAS"

Application.Workbooks(Nombre).Close False

End Sub

Ejecutar macros de otro archivo creando una Referencia

Otra manera de ejecutar macros dese otro archivo es creando una Referencia a dicho archivo. Crearemos la referencia dentro del IDE o VBE de VBA.

  • Dentro del VBE, elegimos en la parte izquierda el archivo Convertir a MAYUSC.xlsm.
  • Damos clic derecho y elegimos Propiedades VBAProject.
  • El Nombre de proyecto ingresamos MAYUSC.
  • Aceptar.
  • Elegimos el archivo 029 – Ejecutar macros o procedimientos de otros archivos – EXCELeINFO.xlsm.
  • Dentro del IDE de VBA nos vamos al menú Herramientas > Referencias.
  • Dentro de la lista marcamos MAYUSC.
  • Aceptar.

Una vez creada la referencia, en la parte izquierda, dentro del archivo 029… veremos una carpeta llamada Referencias.

Al crear la referencia al archivo de la macro MAYUSCULAS podremos llamar a sus macros solo con escribir el nombre de la macro o usando la instrucción Call, el nombre del proyecto y el nombre de la macro.

Sub Prueba()

MAYUSCULAS
Call MAYUSC.MAYUSCULAS
Call MAYUSCULAS

End Sub

Descarga el archivo de ejemplo

029 – Ejecutar macros o procedimientos de otros archivos – EXCELeINFO.zip

<<CURSO COMPLETO EN YOUTUBE>>

Si te gustó este tutorial por favor regístrate en nuestra Lista de correo y Suscríbete a nuestro canal de YouTube para que estés siempre enterado de lo nuevo que publicamos.

 

También te podría gustar...