Está en la página 1de 7

Cómo reutilizar código de Macros

Una vez que tenemos un código de Macro creado en un libro de Excel, nos puede interesar
que esté disponible para más libros. Si queremos reutilizar esa código para algún uso
particular, podemos exportar e importar es código de un libro a otro.

Lo primero que vamos a hacer es crear una macro con el grabador de macros. Basta con que
nos grabe cualquier acción sencilla, por ejemplo escribir en la celda A1. Una vez terminada de
grabar la macro, pulsamos Alt-F11 para abrir el entorno de VisualBasic, y hacemos doble clic
en el Módulo 1 para poder ver su código.

Ahora que tenemos seleccionado el


Módulo 1, vamos a exportarlo. Pinchamos
con el ratón en el menú Archivo y
seleccionamos la acción Exportar Archivo.

IMPORTANTE: El archivo se guarda con


extensión .bas (de Basic)

Una vez exportado el Módulo 1, creamos otro libro, importamos la Macro y la utilizamos para
probar que hemos hecho todo el proceso bien.

1
Otra opción para tener código disponible para todas las hojas es crear un Complemento.
Tenemos nuestra hoja recién creada y queremos que se pueda utilizar la Macro 1 en todos los
libros.

Lo primero que tenemos que hacer es cambiar las propiedades del libro que hemos creado.
Dentro de las propiedades del documento, cambiamos el Título, ya que va a ser el nombre del
complemento.

2
Una vez que hemos cambiado el nombre del Título del documento, vamos a guardarlo como
complemento.

El archivo se guarda en una carpeta especial de Excel para complementos (en inglés, AddIns).
Una vez que tenemos guardado nuestro documento como complemento, tenemos que
activarlo. Para ello, vamos al menú Herramientas -> Complementos, y dentro del cuadro de
Complementos, activamos el nuevo complemento que hemos creado.

3
Ya tenemos nuestro complemento creado, vamos al menú de las macros, para ejecutar la
Macro1 y nos encontramos con esta desagradable sorpresa:

4
¡¡¡ NO
HAY NINGUNA MACRO
CREADA !!!

No hay problema.

Escribimos donde pone Nombre de la


macro , Macro1, y le damos a ejecutar.
¡¡Voila!!

Funciones

Para explicar rápidamente lo que son las


funciones, diremos que una función es
una macro que devuelve un valor. Para calcular ese valor, también puede ser necesario que le
demos algún valor a la función.

Como una función es como una macro, vamos a grabar primero una macro que escriba un
valor en la celda A1. Este sería el código:

Sub Macro1()

Range("A1").Select

ActiveCell.FormulaR1C1 = "5"

Range("A2").Select

End Sub

Lo primero que diferencia una función de una macro, es que la macro empieza por la palabra
Sub y la función empieza con la palabra Function. Así que hacemos esa modificación:

Function Macro1()

Range("A1").Select

ActiveCell.FormulaR1C1 = "5"

Range("A2").Select

End Function

5
Ahora es cuando llega lo interesante. Tenemos que decidir qué valor va a devolver la función
Macro1. Para hacer un ejemplo sencillo, vamos a hacer que la función Macro1 reciba un valor
y nos devuelva el doble de ese valor. Entonces borramos el código interior de la función, y
hacemos lo siguiente. Entre los paréntesis de Macro1, vamos a escribir el nombre de la
variable que le pasamos a la función, por ejemplo, valor_introducido:

Function Macro1(valor_introducido)

End Function

Ahora ya tenemos

6
7

También podría gustarte