Macros desmitificadas: qué son y para qué se utilizan

Contribuidor de la comunidad por Stephanie Krieger, experta en producción de documentos

Se aplica a:
ediciones de Microsoft Office System 2003

¿Alguna vez ha invertido mucho tiempo en realizar una tarea repetitiva en un programa de Microsoft Office sospechando que habría una forma más sencilla de realizar el trabajo? Quizás necesitara cambiar el formato de varias tablas en un documento de gran tamaño de Word o reorganizar los datos de una hoja de cálculo de Excel. O quizás ha querido aplicar los mismos cambios en varias páginas de Visio o en varias diapositivas de PowerPoint similares. Si estas tareas u otras similares le resultan familiares, debería aprender a utilizar macros.

Probablemente haya recibido advertencias de macros al abrir documentos de Office y por ello relaciona las macros con términos intimidantes como virus o programación. Sin embargo, debería saber que la mayor parte de las macros no sólo son inofensivas sino que además son muy útiles para ahorrar tiempo. Además, las macros son mucho más sencillas de crear y utilizar de lo que pueda pensar.

En esta página:

¿Qué es una macro?

Una macro es un conjunto de comandos que se pueden aplicar con un único clic. Pueden automatizar casi todas las tareas que se puedan realizar en el programa que se esté utilizando e incluso permiten realizar tareas que no creía posibles.

¿Son las macros un tipo de programación?

Las macros son programación, pero no es necesario ser programador ni tener conocimientos de programación para utilizarlas. La mayoría de las macros que se pueden crear en los programas de Office se escriben en un lenguaje llamado Microsoft Visual Basic para Aplicaciones, conocido como VBA. Las macros VBA son las que tratamos en este artículo.

¿Cuándo se deben utilizar macros?

Las macros ahorran tiempo y amplían las posibilidades de los programas que utiliza a diario. Se pueden utilizar macros para automatizar tareas de producción de documentos repetitivas, para agilizar tareas aparatosas o para crear soluciones como automatizar la creación de los documentos que tanto usted como sus compañeros utilizan con regularidad. Los usuarios que estén familiarizados con el lenguaje VBA pueden utilizar macros para crear complementos personalizados que incluyan plantillas o cuadros de diálogo, o incluso guarden información para utilizarla en distintas ocasiones.

Observe el ejemplo utilizado en este artículo para dar formato a varias tablas en un documento de Word. Supongamos que en un documento hay 50 tablas cuyo formato desea modificar. Incluso si es usted un usuario experimentado y sólo necesita cinco minutos para cambiar el formato de cada tabla, necesitará más de cuatro horas para realizar la tarea. Si crea una macro para dar formato a las tablas y después edita dicha macro para repetir los cambios en el documento, puede terminar el trabajo en cuestión de minutos, en vez de horas.

¿Cómo se crea una macro?

En muchos programas de Office, puede crear una macro grabando una serie de acciones o escribiendo la macro.

Grabar macros

La grabación de una macro es una tarea tan sencilla como encender o apagar una grabadora de cintas. Cuando se utiliza la grabadora de macros, la macro se escribe automáticamente siguiendo las acciones que se realicen. En Office, puede grabar macros en Word, Excel, PowerPoint, Visio y Project.

Por ejemplo, veamos cómo se grabaría una macro para la primera tarea mencionada al principio de este artículo: cambiar el formato de varias tablas en un documento de gran tamaño de Word. Puede utilizar un estilo de tabla para aplicar gran parte del formato a la tabla, pero es posible que, además, necesite aplicar formato que no forme parte de ningún estilo, como el ancho de las tablas o el alto de las filas.

Para grabar esta macro, coloque el punto de inserción en la primera tabla cuyo formato desea modificar y, a continuación, haga lo siguiente:

  • En el menú Herramientas, haga clic en Macro y, a continuación, haga clic en Grabar nueva macro.
  • En el cuadro de diálogo Grabar macro, como mostramos aquí, puede dar nombre a la macro, asignarle un método abreviado de teclado o una barra de herramientas para que quede más accesible, personalizar la ubicación en la que se guarda la macro, y agregar una descripción de la misma para futuras referencias. O, si lo prefiere, puede omitir todos estos pasos por ahora y hacer clic en Aceptar para que comience la grabación.

Cuadro de diálogo Grabar macro

  1. Puede modificar el nombre numérico asignado automáticamente a la macro. Los nombres de macro pueden incluir letras y números, pero no espacios en blanco.
  2. De manera predeterminada, las nuevas macros que se graban se guardan en la plantilla global Normal.dot. También puede guardar la macro en el documento o en la plantilla activos, o en otra plantilla personalizada.
  3. Puede asignar una macro para que esté accesible en una barra de herramientas o mediante un método abreviado de teclado. Si omite esta parte, puede realizar estas asignaciones en cualquier momento posterior a la creación de la macro.
  4. La descripción de la macro incluye la fecha y el nombre del usuario que está grabando la macro. Puede editar esta descripción como crea conveniente.

Cuando haya hecho clic, se abrirá una pequeña barra de herramientas con dos botones: Detener grabaciónImagen del botón y Pausar grabaciónImagen del botón.

  • Ejecute todos los pasos que necesite para dar formato a la tabla. Por ejemplo, puede aplicar un estilo de tabla, definir un ancho de tabla del 50% del ancho de página disponible, seleccionar la tabla y eliminar la configuración de alto de fila de todas las filas. Cuando termine de aplicar el formato que desee aplicar a todas las tablas cuyo formato desea modificar, haga clic en el botón Detener grabación.
  • Ahora puede hacer clic en cualquier tabla del documento y ejecutar esta macro para que se repitan automáticamente todas las acciones realizadas en la primera tabla.

Nota     Si no ha asignado la macro a ninguna barra de herramientas ni a ningún método abreviado de teclado, puede encontrarla en el cuadro de diálogo Macros. Para abrir este cuadro de diálogo, en el menú Herramientas, haga clic en Macro y después en Macros. Seleccione la macro en la lista de macros y haga clic en Ejecutar.

Escribir macros

En los programas de Office en los que pueden grabarse macros, y en Access, Outlook, FrontPage y Publisher, puede escribir sus propias macros VBA. Para escribir una macro es necesario conocer un mínimo del lenguaje VBA, pero se sorprendería lo sencillo que es aprenderlo gracias a lo que ya sabe sólo por utilizar el programa. VBA automatiza las funciones que se utilizan todos los días. Por ejemplo, en Word, los términos VBA incluyen documentos, tablas, párrafos o secciones.

Cuando se escribe una macro, o cuando se edita una macro grabada, se puede otorgar más versatilidad a la macro. Por ejemplo, tomando el ejemplo anterior de grabación de macro, podría editar la macro grabada agregándole un bucle (código VBA sencillo) que permita que la macro aplique el formato a todas las tablas del documento en una acción única en vez de tener que ejecutar la macro en cada una de las tablas.

Una de las mayores ventajas de escribir o editar macros VBA es que una vez que aprende la base de escritura VBA en un programa de Office, puede utilizar dichos conocimientos para escribir o editar macros en el resto de los programas de Office. La terminología puede ser distinta para funciones específicas, pero el lenguaje que necesita conocer para definir una macro, o para agregar funciones como los bucles, es idéntico en todos los programas que utilicen VBA.

Sugerencia     Un buen modo de empezar a aprender VBA es grabar una macro y consultarla posteriormente en el Editor de Visual Basic. Para ello, en el menú Herramientas, haga clic en Macro y después en Macros. Seleccione la macro grabada en la lista de macros y haga clic en Editar.

¿Qué es la seguridad de macros?

Todos sabemos que, mientras la mayoría de las macros son inofensivas y muy útiles, las macros constituyen una cuestión de seguridad importante. Cuando se crean con malas intenciones, las macros pueden contener códigos destructivos destinados a causar daños en los documentos o en el sistema.

Para proteger el sistema y los archivos, no habilite macros de origen desconocido. Si quiere tener la opción de habilitar o deshabilitar macros discriminadamente, y seguir teniendo acceso a todas las macros que desee utilizar, defina el nivel medio de seguridad de macros en los programas de Office. De este modo tendrá la opción de habilitar o deshabilitar macros cada vez que abra un archivo que contenga una macro, permitiéndole al mismo tiempo ejecutar cualquier macro que seleccione.

Para definir la seguridad de macros en cualquier programa de Office que ofrezca macros VBA, en el menú Herramientas haga clic en Macro y después en Seguridad. Seleccione el nivel de seguridad deseado y haga clic en Aceptar. Observe que no se recomienda seleccionar el nivel de seguridad Bajo.

Introducción a las macros en...

Word

Puede grabar o escribir macros en Word.

Si es usuario experto de Word y está familiarizado con la grabación de macros, Word es un lugar excelente para aprender a editar y escribir sus propias macros, ya que el lenguaje VBA de Word utiliza terminología que ya conoce y utiliza a diario.

Excel

Las macros son muy comunes en Excel porque pueden ampliar en gran medida la funcionalidad de uso diario. Las macros de Excel se pueden utilizar para todo, desde la automatización de tareas comunes a la creación de funciones personalizadas.

PowerPoint, Visio y Project

Al igual que en Word y Excel, puede grabar y escribir macros en PowerPoint, Visio y Project.

Access

Las macros son importantes en Access porque pueden ampliar enormemente la funcionalidad de las bases de datos. Aunque no se pueden grabar macros en Access, sí se pueden escribir códigos en VBA de Access o crear macros con una herramienta llamada Generador de macros. Access le ofrece varias opciones, VBA es una de ellas, para ayudarle a crear la automatización que necesita.

FrontPage y Publisher

Al igual que en Word, Excel, PowerPoint y Visio, puede escribir macros en FrontPage o Publisher para ahorrar tiempo en las tareas repetitivas o, en el caso de FrontPage, para crear y utilizar complementos que amplíen la funcionalidad del programa.


Acerca del autor

Stephanie Krieger es una experta en producción de documentos especializada en crear soluciones con Microsoft Office System y es la autora de Generador de documentos de Microsoft Office. Stephanie escribe en varios sitios Web de Microsoft, incluidos Microsoft At Work y Office Online, y suele enviar difusiones por Web de Office System.