Aplicabilidad: Word 365, 2019, 2016; Sistemas operativos Windows y MAC OS X.
Aquí hay una pregunta de un lector:
Soy un maestro que normalmente uso Word 2019 para escribir mis documentos. A menudo necesito cambiar la fuente y el tamaño de los párrafos de mi documento. ¿Hay alguna manera de automatizar mi trabajo con Macros, para que pueda modificar el párrafo de mi documento con un solo clic? Estoy seguro de que esto me va a ahorrar un par de horas por semana, que con mucho gusto invertiré en otras tareas.
Gracias por tu pregunta. La principal ventaja de las macros es que le permiten automatizar sus tareas en las aplicaciones de Microsoft Office. Las macros se pueden grabar o codificar manualmente con Visual Basic para aplicaciones (VBA). Word incluye una grabadora de macros que le permite desarrollar scripts de automatización sin codificación. Si recién está comenzando con la automatización, esta podría ser una solución lo suficientemente buena. Dicho esto, con un poco de conocimiento de VBA, puede escribir macros eficientes y potentes.
Habilitar la pestaña de desarrollador en Word
Si no ve la pestaña Desarrollador en la cinta de opciones de Microsoft Word, deberá configurar su entorno de desarrollo de macros.
- Abre un nuevo documento de Word. En caso de que desee trabajar en un archivo existente, asegúrese de tener una copia de respaldo antes de realizar cualquier cambio.
- Ahora, continúe y haga que el menú del desarrollador sea visible en la cinta .
Grabación de una macro de Word: un ejemplo práctico
- Ahora, presione la pestaña Desarrollador recién agregada.
- Vaya al grupo de botones Código .

- Pulse el botón Grabar macro para invocar la función de grabadora de macros.

- Defina un nombre significativo para su Macro. Nota: Como el nombre que proporcione se usará en el código VBA creado automáticamente, asegúrese de que no haya espacios en el nombre de la macro.
- Nota: aunque es posible asignar macros a los botones, para simplificar, ejecutaremos la macro manualmente a través de la pestaña Ver o las pestañas Desarrollador.
- Ejecute la secuencia de pasos que le gustaría grabar. En este caso, registrará los siguientes pasos:
- Seleccione un párrafo específico en su documento.
- Vaya a la pestaña Inicio .
- Establezca la fuente en Times New Roman.
- Establezca el Tamaño de fuente en 16.
- Centre su texto presionando Ctrl + E.
- Una vez hecho esto, regrese a la pestaña Desarrollador y presione Detener grabación .
- Ahora echemos un vistazo al código VBA generado automáticamente. Presione Macros y luego resalte la macro Autoformato y presione Editar .

Guarde su trabajo en una plantilla habilitada para macros de Word
- Presiona Archivo , luego Guardar como .
- En el lado derecho del cuadro de diálogo Guardar como, determine su ubicación de guardado y proporcione un nombre significativo a su Libro de trabajo.

- Elija Documento habilitado para macros de Word como su tipo de documento. Nota: Su documento de Word se guardará con el sufijo .docm.
- Pulse el botón Guardar .
Ejecutando tu macro
- Abre tu documento de Word.
- Seleccione el párrafo que le gustaría formatear automáticamente. Solo como ejemplo, aquí está el párrafo que elegí:

- Vaya a la pestaña Ver .
- Pulse el botón Macros .
- Seleccione su macro de formato automático
- Presiona Ejecutar : esto aplicará la macro en el párrafo seleccionado.
- Voi'la, buen resultado!

Asignación de su macro a botones o atajos de teclado
Nota: Este es un paso opcional que debe intentarse después de haber seguido el tutorial de grabación de macros anterior.
Bien, hasta ahora tenemos funcionando los conceptos básicos de Macro. Ahora es el momento de mejorar un poco nuestra usabilidad de macros en el documento de Word. Déjame mostrarte cómo puedes asociar tu Macro con un botón de acceso rápido, para que puedas ejecutarlo más fácilmente.
- Haga clic derecho en la cinta y seleccione Personalizar la barra de herramientas de acceso rápido.
- Aparecerá el cuadro de diálogo Opciones de Word .
- En el menú desplegable Elegir comandos de, seleccione Macros.
- Resalte su macro y presione el botón Agregar>> para agregar un acceso directo a su macro en la barra de herramientas de acceso rápido .

- Pulse el botón Modificar... para definir un icono adecuado para su Macro.
- Defina un nombre para mostrar para su botón.
- Pulse Aceptar .
- Ahora, puede iniciar su macro desde la barra de herramientas de acceso rápido, justo encima de la cinta.

Nota: puede asociar su Word Macro no solo con botones de acceso rápido, sino también con botones de comando incrustados en su documento y atajos de teclado personalizados específicos.
Crear macros de Word usando VBA
Con algunas habilidades simples de codificación de Visual Basic para aplicaciones, podemos editar las macros y escribir programas para automatizar varios tipos de trabajos usando VBA.
Nota aparte: FYI: algunas de las aplicaciones de Microsoft Office, como Powerpoint y Outlook, no tienen grabadoras de macros integradas . Por lo tanto, escribir VBA es obligatorio para escribir macros de Powerpoint y automatizar Outlook.
- Para editar una macro, haga clic en la pestaña Desarrollador y seleccione Macros en la opción de código.
- Haga clic en la macro y seleccione Editar .
- Se abrirá el editor de Visual Basic para aplicaciones.
- Supongamos que queremos editar manualmente la Macro que hemos grabado en el paso anterior, para que Word no solo establezca el Tamaño, la fuente y la alineación del párrafo, sino también el color.
- La configuración del color de una sección se logra mediante el siguiente comando de VBA:
[código] Selección.Fuente.Color [/código]
- En nuestro caso, querremos establecerlo en un azul aleatorio, por lo que agregaremos el siguiente fragmento de código a nuestra macro grabada:
[código] Selección.Fuente.Color = 16737792[/código]
- Así es como debería verse su código VBA:

- En el Editor de VBA, presione Archivo y luego Guardar .
- Vuelva a su documento, ejecute su macro en un párrafo y observe el cambio de color de la fuente.

Ejemplo útil de Word Macro que puede escribir
Desde la publicación de este tutorial, muchos lectores pidieron ejemplos más detallados de Word Macros. Esta lista cubre las tareas más frecuentes que puede automatizar con Visual Basic en Word. Aquí vamos:
Crear y guardar un nuevo documento
Sub CreateNewDoc()
'This small snippet first creates a new document, then it checks whether a document with the same name already exists before saving.
Dim myDoc As New Document
Dim filePath As String
'Modify your file path as needed
filePath = "C:\MyNewDoc.docx"
Set myDoc = Documents.Add
With myDoc
If Dir(filePath) = "" Then
.SaveAs2 (filePath)
Else
'You have already an existing document
MsgBox ("Please use a different file name")
End If
End With
myDoc.Close SaveChanges:=wdPromptToSaveChanges
End Sub
Nota: Al crear nuevos documentos, puede especificar la plantilla (archivos .dotm/.dotx) que le gustaría usar. Las plantillas normalmente se almacenan en: C:\Users\\AppData\Roaming\Microsoft\Templates
Documents.Add Template:=<your_template_folder>
Abrir un documento de Word con VBA
Sub OpenDoc()
'This code checks whether your document exists and then opens it
filePath = "C:\MyNewDoc.docx"
If Dir(filePath) = "" Then
MsgBox ("file doesn't exist")
Else
Documents.Open (filePath)
End If
End Sub
Cerrar uno/todos los documentos abiertos
Sub CloseDoc()
'This code closes a specific document
filePath = "C:\MyNewDoc.docx"
Documents(filePath).Close SaveChanges:=wdPromptToSaveChanges
End Sub
Sub CloseAllDocs()
'This code closes all opened documents in your computer
Documents.Close SaveChanges:=wdPromptToSaveChanges
End Sub
Guardar Word como PDF
Aquí se explica cómo automatizar fácilmente el guardado de documentos de Word como archivos PDF.
Sub SaveAsPdf()
'This code saves a word document in a PDF format
FileName = Left(CStr(ActiveDocument.Name), Len(CStr(ActiveDocument.Name)) - 5)
ActiveDocument.SaveAs2 FileName:="c:\" + FileName + ".pdf", FileFormat:=wdFormatPDF
End Sub
Insertar encabezado y pie de página
Este código establece el encabezado y el pie de página de la primera página de su documento de Word.
Sub InsertHeaderFooterFirstPage()
Dim myDoc As Document
Dim headerText As String
Dim footerText As String
Set myDoc = ActiveDocument
'Replace the header and footer text as needed
headerText = "This document was written by you"
footerText = "All rights reserved to you"
With myDoc.Sections(1)
'We first ensure that we can set different header and footer texts
.PageSetup.DifferentFirstPageHeaderFooter = True
'Setting the header and footer texts
.Headers(wdHeaderFooterFirstPage).Range.Text = headerText
.Footers(wdHeaderFooterFirstPage).Range.Text = footerText
End With
End Sub
Ideas adicionales de macros de palabras
Aquí hay algunas ideas más que publicaremos en el futuro próximo.
- Buscar y reemplazar (método de ejecución)
- Insertar un párrafo (antes y después de una selección)
- Imprimir documentos programáticamente
- Trabajar con tablas
Esto concluye nuestro tutorial de hoy. Como acaba de ver, hay mucho por hacer con la grabadora de macros de Word y las macros de VBA en Word. En caso de que esté buscando ayuda más específica que vaya más allá del alcance de este tutorial, contáctenos a través de nuestro formulario de contacto .