Macros de Word: cómo se crean y ejecutan
Microsoft Office Suite es una de las soluciones ofimáticas más populares. Utilizando sus variadas aplicaciones, podemos trabajar con archivos de Word, Excel o PowerPoint que nos permiten desde escribir textos, a calcular fórmulas matemáticas o realizar presentaciones. Aunque pasen los años, esta suite ofimática sigue demostrando su versatilidad. Sin embargo, muchos usuarios desconocen la mayor parte de las funciones y herramientas que incluye. Por ejemplo, los programas de MS Office tienen una funcionalidad que nos permite crear, grabar y ejecutar macros para automatizar determinadas tareas y procesos. De esta forma, podemos ahorrar mucho tiempo y esfuerzo, sobre todo cuando nuestro trabajo implica repetir los mismos pasos y tareas una y otra vez.
¿Qué pasos exactamente hay que seguir para crear macros en Word y para qué sirven las macros? Respondemos a estas preguntas a continuación y te enseñamos a crear tus propias macros y aplicarlas en tus documentos.
¿Qué es una macro en Word?
Una macro es una serie de instrucciones o comandos que se almacenan para que se puedan ejecutar de manera secuencial mediante una sola orden de ejecución. Están presentes en programación y en ciertas aplicaciones de los programas informáticos más habituales. Por lo tanto, pueden ser utilizadas por desarrolladores y usuarios para crear secuencias de acciones. En el caso de Microsoft Word, que es un procesador de texto, las macros constituyen una funcionalidad esencial que nos permite automatizar una serie de tareas cuando tenemos que desarrollar actividades de forma repetitiva.
Para que podamos grabar y ejecutar nuestras propias macros de Word, contamos con una herramienta integrada que también podemos encontrar en otras aplicaciones como Access, Excel o PowerPoint. Esta herramienta, para poder grabar marcos, utiliza el lenguaje de scripts Visual Basic for Applications (VBA) que también ha sido desarrollado por Microsoft.
El lenguaje de programación dirigido por eventos VBA reemplazó a mediados de los años noventa a los anteriores programas creados por Microsoft Office que utilizaban macros y eran incompatibles entre sí. Visual Basic supuso una solución uniforme que permitió crear y ejecutar cadenas de comandos compatibles en varios programas haciendo posible, por ejemplo, transferir datos de un documento de Word a una hoja de cálculo de Excel con un solo clic.
¿Cómo funcionan las macros en Word?
Crear macros en Word puede sonar como una tarea reservada a programadores con experiencia. La verdad es que la mayoría de los usuarios de Word no suele contar con competencias avanzadas en generación de código y lenguajes de programación. Sin embargo, debido a que la herramienta de macros integrada nos permite programar en un entorno gráfico sin escribir código, para crear y utilizar macros en Word no es necesario tener conocimientos de programación. Para crear una nueva macro debemos, en primer lugar, comenzar la grabación de nuestra macro, luego es necesario grabar los pasos haciendo clic en los comandos correspondientes y, por último, debemos detener la grabación. Al grabar una macro de Word, el código VBA se genera automáticamente.
El editor de Visual Basic es una herramienta más de Microsoft Office que pone a nuestra disposición un entorno de desarrollo VBA. Gracias a esta herramienta, es posible visualizar y editar el código de las macros grabadas.
Cuando creas una nueva macro en Word, puedes asignarle una combinación de teclas o un botón y añadirlos a la barra de herramientas de acceso rápido para poder iniciar la macro y ejecutarla fácilmente en cualquier momento. Para hacer que la macro esté disponible en todos los futuros documentos, agrégala a la plantilla Normal.dotm.
Crear macros en Word: explicación paso a paso
Si quieres automatizar tus tareas más usadas en Word, pero no tienes conocimientos de programación en VBA, puedes hacer uso de la grabadora de macros. Para acceder a la barra de herramientas de macros, debes ir a la pestaña “Vista”, donde encontrarás el grupo “Macros”. De todas formas, es recomendable activar las herramientas de programador si queremos crear y editar las macros en Word ya que, entre otras cosas, de esta forma tendremos acceso al editor de Visual Basic. Para activar esta caja de herramientas opcional, tienes que hacer lo siguiente:
- Pincha sobre la pestaña “Archivo”.
- Luego ve a “Opciones”.
- En “Personalizar la cinta de opciones” y “Pestañas principales”, activa la casilla “Desarrollador”.
Una vez que hayas activado la casilla “Desarrollador”, se mostrará automáticamente una nueva pestaña con ese nombre en la interfaz de Word. Al abrir esa pestaña, podremos ver a la izquierda todas las acciones necesarias para escribir y editar macros. A continuación, te mostramos paso a paso cómo crear tus propias macros usando este menú de acceso rápido y cómo ejecutarlas una vez creadas.
Grabar una macro ejecutable con un botón
Una de las formas más populares de crear una nueva macro en Word es grabar una macro ejecutable con un botón. Para hacerlo, debemos acceder a la pestaña “Desarrollador” y seleccionar “Grabar macro”:
En el cuadro “Nombre de la macro”, escribe un nombre para la macro. A continuación, en la lista “Guardar macro en”, selecciona el documento para el cual quieres crear la macro. Para usar esta macro en futuros documentos, en el cuadro “Guardar macro en” deberás especificar “Todos los documentos (Normal.dotm)”. Para que la macro se ejecute al hacer clic en un botón, elige “Botón”:
En la ventana de la izquierda, haz clic en la nueva macro y luego en “Agregar”. A continuación, haz clic en “Modificar”. Por último, selecciona un icono de botón para la nueva macro de Word:
Para confirmar, haz doble clic en “Aceptar”. Ahora es el momento de grabar los pasos. Haz clic en los comandos o presiona las teclas para cada paso de la tarea. Word graba los clics y las pulsaciones de teclas, pero no los movimientos y señalizaciones del ratón. Para seleccionar texto mientras estás grabando la macro tienes que usar el teclado (Shift + flecha de desplazamiento).
Cuando hayas terminado, puedes detener la grabación haciendo clic en “Detener la grabación”:
El botón de la macro creada aparece en la Barra de herramientas de acceso rápido:
Grabar una macro con un método abreviado del teclado
Para grabar una macro con un método abreviado de teclado, vamos a seguir, en un principio, los mismos pasos que hemos seguido para grabar una macro con un botón. En primer lugar, hacemos clic en “Vista” > “Macros” > “Grabar macro”, escribimos un nombre para la macro y, a continuación, especificamos si queremos o no usar esta macro en futuros documentos. Para ejecutar la macro al presionar un método abreviado de teclado, hacemos clic en “Teclado”:
Se abrirá el menú “Personalizar teclado” y en él debemos seleccionar la macro bajo “Comandos”. A continuación, haz clic con el botón izquierdo del ratón en “Nueva tecla de método abreviado” y en ese mismo cuadro escribe la combinación de teclas: Alt+Ctrl+L
Para utilizar esta macro de método abreviado de teclado en futuros documentos, asegúrate de que el cuadro “Guardar cambios en” especifica “Normal”. Luego, haz clic en “Asignar”. Cuando cierras el menú, ha llegado el momento de grabar los pasos.
Ejecutar una macro en Word
Una vez que has creado una macro, podrás ejecutarla siempre que quieras haciendo clic en un botón del menú de acceso rápido o presionando una combinación de teclas. También podrás ejecutar tus macros de Word desde tu colección de macros siguiendo los siguientes pasos:
- En la pestaña “Desarrollador”, haz clic en el botón “Macros” o, en la pestaña “Vista”, haz clic en el menú “Macros” y, a continuación, en el botón “Ver macros”.
- Selecciona la macro que quieras de la lista haciendo clic con el botón izquierdo del ratón sobre ella.
- Haz clic en “Ejecutar”.
Agregar un botón de macro a la cinta de opciones
En caso de que encuentres que el icono de la macro visible en la barra de acceso rápido es demasiado pequeño o si quieres agregar un botón de macro de acceso directo, Word te da la opción de agregarlo a cualquier pestaña a través de la cinta de opciones. Para ello, deberás crear un nuevo grupo personalizado, que es donde vas a agregar la macro. A continuación, desde “Archivo” > “Opciones” > “Personalizar la cinta de opciones” podrás seleccionar la macro que desees.
Crear un grupo personalizado:
En “Personalizar la cinta de opciones”, haz clic en el botón “Nuevo grupo”, que aparece junto a los grupos estándar de esta pestaña. A continuación, haz clic en “Cambiar nombre” y escribe un nombre para el grupo personalizado. También podrás asignarle un icono:
Agregar una macro a un grupo personalizado en Word:
Una vez que hemos creado un grupo personalizado para la cinta de opciones, podremos agregar todas las macros de Word que queramos a ese grupo. Para ello, primero tienes que ir a la lista “Comandos disponibles en” y seleccionar la opción “Macros”. A continuación, selecciona la macro que deseas agregar a tu grupo en la ventana de la izquierda y el grupo al que deseas agregar la macro en la columna derecha y haz clic en “Agregar” y en “Aceptar”.
Si todo ha ido bien, el nuevo grupo deberá aparecer en la cinta de opciones:
Importar macros a Word
Nos podemos encontrar con el caso de que ya disponemos de macros en VBA, pero necesitamos importarlas a Word. Esto ocurre, por ejemplo, cuando hemos creado nuestras macros en otro dispositivo o nos las ha enviado otra persona. En Internet, además, existen varias páginas web donde es posible encontrar numerosas macros y código. Microsoft Word nos da la opción de importar esas cadenas de comandos ya creadas para que podamos, de este modo, utilizarlas en Word. Para ello, la herramienta necesaria es el editor de Visual Basic que ya hemos mencionado previamente. Para abrirlo, podemos utilizar el atajo del teclado [Alt] + [F11] o ir a la pestaña “Desarrollador”.
Los pasos que debemos dar a continuación serán diferentes en función de si estamos importando un archivo con macros o código de macros.
Importar archivos con macros listas para usar (.frm, .bas, .cls):
Si dispones de un archivo con macros, puedes importarlo a tu programa de Word siguiendo unos pocos pasos. El primero consiste en buscar en el Explorador de proyectos de Visual Basic el documento al que queremos agregar nuestra macro importada. Si el Explorador de proyectos no está visible en el editor de código, tienes que ir a la pestaña “Ver” y hacer clic en “Explorador de proyectos”. A continuación, haz clic sobre tu proyecto actual o sobre otro proyecto de Word si quieres que se aplique a un documento específico. Si seleccionamos el proyecto “Normal”, la macro de Word se importará a todos los documentos:
Para importar la macro, haz clic en “Archivo” y, a continuación, en “Importar archivo”. Tienes que especificar la ubicación del archivo de macros y hacer clic en “Abrir” para comenzar con la importación.
Importar código de una macro:
En el caso de que solo dispongas del código VBA de una macro, la importación se realiza de otra manera. Lo primero es seleccionar el documento al que se desea añadir la secuencia de comandos automatizada. Para ello, abre el Explorador de proyectos y haz doble clic en “Normal” (así la macro se guardará en la plantilla general) o en la entrada “ThisDocument” (subcarpeta de “Microsoft Word Objetos”):
Aparecerá una ventana de código que es donde vamos a copiar el código de la macro. Luego, hacemos clic en “Guardar”. Si en el paso anterior seleccionaste un documento de Word específico, se te informará de que es necesario guardarlo como “Documento de Word con macros”. Para ello, haz clic en “No” y selecciona la opción correcta bajo “Tipo de archivo”. Cuando hayas acabado, haz clic en “Guardar” para crear el nuevo formato de archivo:
Macros de Word: ejemplos de secuencias de comandos útiles
Ahora que ya sabes qué es una macro de Word y que has aprendido a crear, ejecutar e importar macros, ha llegado el momento de mostrarte algunos ejemplos concretos de macros en Word para que puedas ver, mediante un caso práctico, el fin de estas herramientas de automatización con comandos en el procesador de textos de Microsoft.
Macros para determinar automáticamente la longitud media de las frases
Existen varias herramientas web que nos permiten analizar nuestros textos para poder determinar, por ejemplo, cuál es la longitud media de las frases que utilizamos. Pero, si contamos con la macro apropiada, Word puede calcularlo directamente. A continuación, incluimos un código que sirve para capturar automáticamente todas las frases de un documento y dividir el número total de palabras entre el número de frases. Esta macro utiliza el mensaje de texto “Promedio de palabras por frase” para presentar la longitud media:
Sub Contador de palabras()
Dim s As Range
Dim numWords As Integer
Dim numSentences As Integer
numSentences = 0
numWords = 0
For Each s In ActiveDocument.Sentences
numSentences = numSentences + 1
numWords = numWords + s.Words.Count
Next
MsgBox "Promedio de palabras por frase: " + Str(Int(numWords / numSentences))
End Sub
Macro para corregir errores tipográficos
Cualquier persona que tenga que escribir textos desde el ordenador con frecuencia, sabe que es muy fácil cometer algún error al teclear las palabras. Corregir estos errores es sencillo, pero con la siguiente macro tan solo tendrás que colocar el cursor delante de los caracteres intercambiados. Al ejecutar la macro por combinación de teclado o haciendo clic en un botón, los caracteres se corregirán automáticamente.
Sub Error tipográfico()
Selection.MoveRight Unit:=wdCharacter, Count:=1, Extend:=wdExtend
Selection.Cut
Selection.MoveRight Unit:=wdCharacter, Count:=1
Selection.Paste
End Sub
Código macro para eliminar todos los hipervínculos
En Word, cuando introducimos páginas web o direcciones de correo electrónico, se crean de forma automática enlaces a los correspondientes destinos web. Si no quieres que esos hipervínculos aparezcan en tu documento de Word, tienes que ir eliminándolos uno a uno. El siguiente ejemplo de macro en Word te ahorrará muchísimo trabajo ya que se encarga de eliminar de forma automática el primer hipervínculo que detecte en el documento. Solo tienes que ejecutar la macro hasta que todos los vínculos y enlaces hayan desaparecido:
Sub SinHipervínculos()
'On Error Resume Next
Dim x As Variant
For Each x In ActiveDocument.Hyperlinks
Selection.WholeStory
Selection.Range.Hyperlinks(1).Delete
Next x
End Sub
Por favor, ten en cuenta el aviso legal relativo a este artículo.