Ejecutar una macro

Existen varias maneras de ejecutar una macro en Microsoft Excel. Una macro es una acción o un conjunto de acciones que permiten automatizar tareas. Las macros se graban en el lenguaje de programación de Visual Basic para Aplicaciones. Para ejecutar una macro, se hace clic en el comando Macros de la cinta de opciones (ficha Programador, grupo Código). En función de cómo se haya asignado la ejecución de una macro, para ejecutar la macro también se podrá usar un método abreviado (método abreviado: tecla o combinación de teclas de función, como F5 o CTRL+A, que utiliza para ejecutar un comando. Una tecla de acceso, por lo contrario es un combinación de teclas, como ALT+F, que mueve el foco a un menú, comando o control.) de combinación con la tecla CTRL, o se podrá hacer clic en la barra de herramientas de acceso rápido o en un grupo personalizado de la cinta de opciones, o en una área de un objeto, gráfico o control. Además, una macro se puede ejecutar automáticamente al abrirse un libro.

Nota    Cuando se establece el nivel de seguridad de la macro en Excel en Deshabilitar todas las macros sin notificación, Excel ejecuta únicamente aquellas macros que están firmadas digitalmente o almacenadas en una ubicación de confianza, como la carpeta de inicio de Excel del equipo. Si la macro que desea ejecutar no está firmada digitalmente (firma digital: sello electrónico seguro con cifrado que certifica la autenticidad de una macro o documento. Esta firma confirma que la macro o documento emitido por el equipo o la persona que lo firma no ha sido alterado.) o no se encuentra en una ubicación de confianza (ubicación de confianza: ruta de acceso de carpeta o archivo en el equipo o una ubicación de la intranet desde la que se puede ejecutar código con seguridad. Entre las ubicaciones de confianza predeterminadas se incluyen las carpetas de plantillas, complementos e inicio; además puede especificar sus propias ubicaciones de confianza.), puede cambiar temporalmente el nivel de seguridad para habilitar todas las macros.

¿Qué desea hacer?


Ejecutar una macro

  1. Si la pestaña Programador no está disponible, haga lo siguiente para mostrarla:
    1. Haga clic en la pestaña Archivo, elija Opciones y, a continuación, haga clic en la categoría Personalizar cinta de opciones.
    2. En la lista Fichas principales, active la casilla de verificación Programador y haga clic en Aceptar.
  2. Para establecer el nivel de seguridad de manera que estén habilitadas temporalmente todas las macros, haga lo siguiente:
  1. En la pestaña Programador, en el grupo Código, haga clic en Seguridad de macros.

Grupo Código de la ficha Programador

  1. En la categoría Configuración de macros, en Configuración de macros, haga clic en Habilitar todas las macros (no recomendado; puede ejecutarse código posiblemente peligroso) y, a continuación, haga clic en Aceptar.

Nota    Para ayudar a evitar que se ejecute código potencialmente peligroso, recomendamos que vuelva a cualquiera de las configuraciones que deshabilitan todas las macros cuando termine de trabajar con las macros.

  1. Abra el libro que contiene la macro.
  2. En la ficha Programador, en el grupo Código, haga clic en Macros. Grupo Código de la ficha Programador
  3. En el cuadro Nombre de la macro, haga clic en la macro que desea ejecutar.
  4. Siga uno de los procedimientos siguientes:
  • Para ejecutar una macro en un libro de Excel, haga clic en Ejecutar.

Sugerencia    También puede presionar CTRL+F8 para ejecutar la macro. Puede interrumpir la ejecución de la macro presionando ESC.

Volver al principio Volver al principio

Ejecutar una macro presionando una combinación de teclas de método abreviado con CTRL

  1. Si la pestaña Programador no está disponible, haga lo siguiente para mostrarla:
    1. Haga clic en la pestaña Archivo, elija Opciones y, a continuación, haga clic en la categoría Personalizar cinta de opciones.
    2. En la lista Fichas principales, active la casilla de verificación Programador y haga clic en Aceptar.
  2. En la ficha Programador, en el grupo Código, haga clic en Macros. Grupo Código de la ficha Programador
  3. En el cuadro Nombre de la macro, haga clic en la macro a la que desea asignar una combinación de teclas con CTRL.
  4. Haga clic en Opciones.

Aparecerá el cuadro de diálogo Opciones de la macro.

  1. En el cuadro Tecla de método abreviado, escriba cualquier letra minúscula o mayúscula que desee usar.

Nota    La tecla de método abreviado invalidará a cualquier tecla de método abreviado predeterminada equivalente en Excel mientras esté abierto el libro que contiene la macro.

Para obtener una lista de teclas de método abreviado que usen la tecla CTRL y que ya están asignadas en Excel, vea el tema sobre teclas de función y de método abreviado de Excel.

  1. Escriba una descripción de la macro en el cuadro Descripción.
  2. Haga clic en Aceptar para guardar los cambios y, a continuación, en Cancelar para cerrar el cuadro de diálogo Macro.

Volver al principio Volver al principio

Ejecutar una macro haciendo clic en un botón de la barra de herramientas de acceso rápido

Para agregar un botón a la barra de herramientas de acceso rápido para que ejecute una macro, haga lo siguiente:

  1. Haga clic en la pestaña Archivo, elija Opciones y haga clic en Barra de herramientas de acceso rápido.
  2. En la lista Comandos disponibles en, seleccione Macros.
  3. En la lista, haga clic en la macro que creó y, a continuación, en Agregar.
  4. Para cambiar la imagen del botón de la macro, seleccione la macro en el cuadro al que la agregó y haga clic en Modificar.
  5. En Símbolo, haga clic en la imagen de botón que desea.
  6. Para cambiar el nombre de la macro que aparece al posicionar el cursor sobre el botón, escriba el nombre que desea en el cuadro Nombre para mostrar.
  7. Haga clic en Aceptar para agregar el botón de la macro a la barra de herramientas de acceso rápido.
  8. En la Barra de herramientas de acceso rápido, haga clic en el botón de la macro que acaba de agregar.

Volver al principio Volver al principio

Ejecutar una macro mediante un botón de un grupo personalizado de la cinta de opciones

Si aprovecha la capacidad de personalización de la cinta de opciones en Excel 2010, puede crear un grupo personalizado que aparezca en una ficha de la cinta de opciones y, a continuación, asignar una macro a un botón de ese grupo. Por ejemplo, puede agregar un grupo personalizado denominado "Mis macros" a la ficha Programador, y agregar una macro (que aparece como un botón) al nuevo grupo.

Para obtener más información, vea el artículo sobre cómo personalizar la cinta de opciones.

Volver al principio Volver al principio

Ejecutar una macro haciendo clic en un área de un objeto gráfico

Puede crear una zona activa en un gráfico donde los usuarios pueden hacer clic para ejecutar una macro.

  1. En la hoja de cálculo, inserte un objeto gráfico, como una imagen, una imagen prediseñada, una forma o un gráfico SmartArt.

Para obtener información sobre cómo insertar un objeto gráfico, vea el tema sobre cómo agregar, cambiar o eliminar formas.

  1. Para crear una zona activa en el objeto existente, en la pestaña Insertar, en el grupo Ilustraciones, haga clic en Formas, seleccione la forma que desea usar y, a continuación, dibuje dicha forma en el objeto existente.

Grupo Ilustraciones de la ficha Insertar

  1. Haga clic con el botón secundario en la zona activa que ha creado y, a continuación, elija Asignar Macro.
  2. Siga uno de los procedimientos siguientes:
    • Para asignar una macro al botón u objeto gráfico, haga doble clic en la macro o escriba el nombre de la misma en el cuadro Nombre de la macro.
    • Para grabar una nueva macro y asignarla al objeto gráfico seleccionado, haga clic en Grabar, escriba un nombre para la macro en el cuadro de diálogo Grabar macro y haga clic en Aceptar para comenzar a grabar la macro. Cuando termine de grabarla, haga clic en Detener grabación Imagen del botón en la ficha Programador del grupo Código.

Sugerencia    También puede hacer clic en Detener grabación Imagen del botón en el lado izquierdo de la barra de estado.

  • Para modificar una macro existente, haga clic en el nombre de la macro, en el cuadro Nombre de la macro y, a continuación, haga clic en Modificar.
  1. Haga clic en Aceptar.
  2. En la hoja de cálculo, seleccione la zona activa. Se mostrarán las herramientas de Dibujo y se agregará una ficha Formato.
  3. En el grupo Formato, en el grupo Estilos de forma, haga clic en la flecha junto a Relleno de forma y elija Sin relleno.

Grupo Estilos de forma de la ficha Formato en Herramientas de dibujo

  1. Haga clic en la flecha situada junto a Contorno de forma y, a continuación, haga clic en Sin contorno.

Volver al principio Volver al principio

Configurar una macro para que se ejecute automáticamente al abrirse un libro

Si graba una macro y la guarda con el nombre "Auto_abrir", la macro se ejecutará cada vez que se abra el libro que contiene la macro. Otra forma de ejecutar automáticamente una macro al abrir un libro es escribir un procedimiento de VBA en el evento Open del libro usando el Editor de Visual Basic (Editor de Visual Basic: entorno en el que puede escribir y modificar código y procedimientos de Visual Basic para Aplicaciones. El Editor de Visual Basic contiene un conjunto completo de herramientas de depuración para buscar sintaxis, tiempo de ejecución y problemas lógicos en el código en uso.). El evento Open es un evento de libro integrado que ejecuta su código de macro cada vez que se abre el libro.

Crear una macro Auto_abrir

  1. Si la pestaña Programador no está disponible, haga lo siguiente para mostrarla:
    1. Haga clic en la pestaña Archivo y, a continuación, elija Opciones.
    2. En la categoría Personalizar cinta, en la lista Pestañas principales, active la casilla Programador y, a continuación, haga clic en Aceptar.
  2. Para establecer el nivel de seguridad de manera que estén habilitadas temporalmente todas las macros, haga lo siguiente:
  1. En la ficha Programador, en el grupo Código, haga clic en Seguridad de macros. Grupo Código de la ficha Programador
  2. En la categoría Configuración de macros, bajo Configuración de macros, haga clic en Habilitar todas las macros (no recomendado; puede ejecutarse código posiblemente peligroso) y, a continuación, haga clic en Aceptar.

Nota    Para ayudar a evitar que se ejecute código potencialmente peligroso, recomendamos que vuelva a cualquiera de las configuraciones que deshabilitan todas las macros cuando termine de trabajar con las macros.

  1. Si desea guardar la macro con un libro determinado, abra primero ese libro.
  2. En la pestaña Programador, en el grupo Código, haga clic en Grabar macro.
  3. En el cuadro Nombre de la macro, escriba Auto_abrir.
  4. En la lista Guardar macro en, seleccione el libro donde desea almacenar la macro.

Sugerencia    Si desea que la macro esté disponible siempre que use Excel, seleccione Libro de macros personal. Cuando se selecciona Libro de macros personal, Excel crea un libro oculto de macros personal (Personal.xlsb), si aún no existe, y guarda la macro en este libro. En Windows Vista, este libro se guarda en la carpeta C:\Usuarios\nombre de usuario\AppData\Local\Microsoft\Excel\XLStart. Si no lo encuentra aquí, es posible que se haya guardado en la subcarpeta Roaming, en lugar de en Local. En Microsoft Windows XP, este libro se guarda en la carpeta C:\Documents and Settings\nombre de usuario\Datos de programa\Microsoft\Excel\XLStart. Los libros almacenados en la carpeta XLStart se abren automáticamente al iniciar Excel. Si desea que se ejecute automáticamente una macro del libro de macros personal en otro libro, también debe guardar ese libro en la carpeta XLStart, de forma que ambos libros se abran cuando se inicie Excel.

  1. Haga clic en Aceptar y realice las acciones que desea grabar.
  2. En la pestaña Programador, en el grupo Código, haga clic en Detener grabación Imagen del botón.

Sugerencia    También puede hacer clic en Detener grabación en el lado izquierdo de la barra de estado.

Botón Detener grabación en la barra de estado

Notas    

  • Si en el paso 6 eligió guardar la macro en Este libro o en Libro nuevo, guarde o mueva el libro a una de las carpetas XLStart.
  • La grabación de una macro Auto_abrir tiene las limitaciones siguientes:
    • Si el libro en donde se guarda la macro Auto_abrir ya contiene un procedimiento de VBA en su evento Open, el procedimiento de VBA del evento Open invalidará todas las acciones contenidas en la macro Auto_abrir.
    • Las macros Auto_abrir se omiten cuando se abren libros mediante programación utilizando el método Open.
    • Una macro Auto_abrir se ejecuta antes de que se abra cualquier otro libro. Por lo tanto, si graba acciones que desea que realice Excel en el libro predeterminado Libro1 o en un libro cargado desde la carpeta XLStart, la macro Auto_abrir producirá un error cuando reinicie Excel porque la macro se ejecuta antes de abrir los libros de inicio y el predeterminado.

Si encuentra estas limitaciones, en vez de grabar una macro Auto_abrir, debe crear un procedimiento de VBA para el evento Open como se describe en la sección siguiente de este artículo.

  • Si desea iniciar Excel sin ejecutar una macro Auto_abrir, mantenga presionada la tecla MAYÚS al abrir el programa.

Crear un procedimiento de VBA para el evento Open de un libro

El ejemplo siguiente utiliza el evento Open para ejecutar una macro al abrir el libro.

  1. Si la pestaña Programador no está disponible, haga lo siguiente para mostrarla:
    1. Haga clic en la pestaña Archivo y, a continuación, elija Opciones.
    2. En la categoría Personalizar cinta, en la lista Pestañas principales, active la casilla Programador y, a continuación, haga clic en Aceptar.
  2. Para establecer el nivel de seguridad de manera que estén habilitadas temporalmente todas las macros, haga lo siguiente:
  1. En la ficha Programador, en el grupo Código, haga clic en Seguridad de macros. Grupo Código de la ficha Programador
  2. En la categoría Configuración de macros, bajo Configuración de macros, haga clic en Habilitar todas las macros (no recomendado; puede ejecutarse código posiblemente peligroso) y, a continuación, haga clic en Aceptar.

Nota    Para ayudar a evitar que se ejecute código potencialmente peligroso, recomendamos que vuelva a cualquiera de las configuraciones que deshabilitan todas las macros cuando termine de trabajar con las macros.

  1. Guarde y cierre todos los libros abiertos.
  2. Abra el libro donde desea agregar la macro o cree un nuevo libro.
  3. En la pestaña Programador, en el grupo Código, haga clic en Visual Basic.
  4. En la ventana Explorador de proyectos, haga clic con el botón secundario en el objeto ThisWorkbook y, a continuación, haga clic en Ver código.

Sugerencia    Si la ventana Explorador de proyectos no está visible, en el menú Ver, haga clic en Explorador del proyecto.

  1. En la lista Objeto situada encima de la ventana Código, seleccione Libro.

De esta manera se crea un procedimiento vacío para el evento Open, como el siguiente:

Private Sub Workbook_Open()

End Sub
  1. Agregue al procedimiento las líneas de código siguientes:
Private Sub Workbook_Open()
    MsgBox Date
    Worksheets("Hoja1").Range("A1").Value = Date
End Sub
  1. Cambie a Excel y guarde el libro como libro habilitado para macros (.xlsm).
  2. Cierre y vuelva a abrir el libro. Al abrir de nuevo el libro, Excel ejecuta el procedimiento Private Sub Workbook_Open, que muestra la fecha actual en un cuadro de mensaje.
  3. Haga clic en Aceptar en el cuadro de mensaje.

Observe que la celda A1 de la Hoja1 también contiene la fecha, como resultado de ejecutar el procedimiento Private Sub Workbook_Open.

Volver al principio Volver al principio

 
 
Corresponde a:
Excel 2010