Las macros en Excel

Mostrar la pestaña Desarrollador en la cinta de opciones

Para escribir macros, ejecutar macros grabadas o crear aplicaciones en Excel, debemos mostrar la pestaña Desarrollador de la siguiente manera:

  • Hacer clic en la pestaña Archivo > Opciones
  • Seleccionar la categoría Personalizar cinta de opciones.
  • Dentro de Personalizar cinta de opciones, en la lista Pestañas principales, marcar la opción Desarrollador.
  • Hacer clic en el botón Aceptar: la pestaña Desarrollador se añadirá a la cinta de opciones de Excel, a la derecha de la pestaña Vista.

Descripción de la pestaña ‘Desarrollador’

Pestaña Desarrollador

Veamos lo que nos podemos encontrar

1. Grupo ‘Código’

Grupo 'Código'

2. Grupo ‘Complementos’

Grupo 'Complementos'

3. Grupo ‘Controles’

Grupo 'Controles'

Grabar una macro

1. Grabar nuestra primera macro

Veamos como grabar una macro que aplique un borde y un relleno en las celdas seleccionadas. Los pasos que vamos a seguir son:

  • Seleccionamos un rango de celdas.
  • Hacemos clic en el botón Grabar macro en la pestaña Desarrollador o en la barra de estado.
  • En el cuadro de diálogo que aparece, escribimos el nombre de la macro, su descripción, e indicamos si lo deseamos, el método abreviado de teclas que queramos.

Grabar una macro

  • Hacemos clic en el botón Aceptar para iniciar la grabación
  • Realizamos en Excel las operaciones que deseemos grabar, en nuestro caso, aplicar un relleno y un borde al rango actualmente seleccionado.
  • Por último, hacemos clic en el botón Detener Grabación de la pestaña Desarrollador para terminar la grabación (también podemos usar el mismo botón en la barra de estado).

2. Ejecutar una macro

Para ejecutar un macro desde Excel debemos seguir los siguientes pasos.

  • Hacemos clic en el botón Macros de la pestaña Desarrollador, o pulsamos el método abreviado de teclas ALT+F8 y hacemos doble clic en el nombre de la macro que queremos ejecutar.
  • O pulsamos la combinación de teclas asociada a dicha macro.
    • Para visualizar la información relativa a una macro (método abreviado de teclado y descripción), seleccionamos la macro en la lista y hacemos clic en el botón Opciones.
    • Para detener la ejecución de una macro, pulsamos ESC o CTRL+PAUSA.

3. Grabar una macro con referencias relativas

Si grabamos una macro en modo de referencias absolutas, que es el modo por defecto, los rangos de celdas referenciados en las operaciones de selección, desplazamientos… serán fijos, por ejm, Range(“A2”) designa la celda A2.

Si grabamos una macro en modo de referencias relativas, los rangos de celdas serán expresados en relación con la posición de la primera celda activa, por ejm, ActiveCell.range(“A2”) designa la celda ubicada bajo la celda activa, ActiveCell.range(“B1”) designa la celda ubicada a la derecha de la celda activa.

  • range(“A1”) siempre hace referencia a la primera celda activa, A1 se puede considerar la referencia relativa a la primera celda activa.

Para grabar una macro con referencias relativas debemos seguir los siguientes pasos:

  • Hacemos clic en el botón Usar referencias relativas de la pestaña Desarrollador: el botón quedará activo (se verá destacado).
  • Si vuelves a hacer clic en el botón Usar referencias relativas, éste quedará desactivado, y las macros se grabarán con referencias absolutas.

Ejm

La misma secuencia de operaciones se ha registrado en dos macros, la primera (refRelativa) se grabó con la opción referencias relativas, la segunda (relAbsoluta) con la opción referencias absolutas.

La secuencia de operaciones es la siguiente:

  • Seleccionar un rango de celdas
  • Desplazar el rango 2 filas hacia abajo y una columna a la derecha
Sub RefRelativa()

’ Referencias relativas

ActiveCell.Range(”A1:B7").Select

Selection.Cut Destination:=ActiveCell.Offset(2, 1).Range(”A1:B7")

ActiveCell.Offset(2, 1).Range(”A1:B7").Select

End Sub

___________________________________________________________________

Sub RefAbsoluta()

’ Referencias absolutas

Range(”B2:C8").Select

Selection.Cut Destination:=Range(”C4:D10")

Range(”C4:D10").Select

End Sub

4. Definir el lugar de almacenamiento de una macro

Para definir el lugar de almacenamiento de una macro seguimos los siguientes pasos:

  • Hacemos clic en el botón macros de la pestaña Desarrollador, o pulsar el método abreviado ALT+F8.
  • Abrimos la lista Macros en y seleccionamos el libro donde deseamos grabar la macro.

Definir el lugar de almacenamiento de una macro

5. Grabar un libro con macros

Si hemos creado macros en un libro por primera vez, aparecerá el siguiente mensaje

Grabar un libro con macros

  • Hacemos clic en NO para guardar el libro sin las macros
  • En el cuadro Guardar como, abrimos Tipo y seleccionamos Libro de Excel habilitado para macros.

Los libros que contienen macros tienen la extensión .xlsm, y su icono se distingue por un signo de exclamación.

También puedes grabar un nuevo libro con macros mediante las siguientes operaciones:

  • Haz clic en la pestaña Archivo y luego en Guardar como
  • En el cuadro Guardar como, abre la lista Tipo y seleccionas la opción Libro de Excel habilitado para macros (*.xlsm).