¿Estás cansado de realizar tareas repetitivas en Microsoft Word? Enterrada dentro del programa hay una poderosa herramienta de automatización que puede quitarle esos trabajos de las manos. Estamos hablando de macros, y aunque la función se basa en Visual Basic para Aplicaciones (VBA) de Microsoft, puede usarla incluso si la idea de codificar le da problemas.
Con un clic en un botón, Word registrará sus acciones, generando una macro que puede reproducir tantas veces como desee. Si es aventurero, puede modificar fácilmente la macro para obtener un grado adicional de automatización.
Aquí le mostraremos un ejemplo simple pero útil: Cómo automatizar la función Buscar y Reemplazar de Word.
Grabar la macro
En este ejemplo, usted es el estimado presidente de la Sociedad para la Preservación de Aparatos Dentales Antiguos. Tiene docenas de documentos de Word sobre dentaduras postizas históricas y similares, todos con el nombre de la sociedad mencionado de manera prominente. Entonces, de repente, la junta vota para cambiar el nombre a Dental Antiques Preservation League. Ahora necesita una forma sencilla de actualizar los documentos.
Puede comenzar con un nuevo documento en blanco o abrir uno existente. Si aún no lo ha hecho, deberá habilitar la pestaña Desarrollador.
Ir Archivo> Opciones> Personalizar cinta. A la derecha, debajo Pestañas principales, comprobar la Desarrollador opción. Seleccione Aceptar y salga.
Ahora creemos nuestra macro.
- Hacer clic Desarrollador> Grabar macro.
- Se le pedirá que nombre la macro. Ingrese "ChangeSocietyName" o cualquier otro nombre que le convenga. Al nombrar macros, evite los espacios, puntos, signos de exclamación y caracteres especiales, o de lo contrario obtendrá un mensaje de error. Puede utilizar números, pero el primer carácter debe ser una letra.
- Puede asignar la macro a un botón y / o atajo de teclado, pero esto no es un requisito. Si elige Botón, Word le permitirá agregarlo a la barra de herramientas de acceso rápido. También puede agregar una breve descripción de la macro.
- Hacer clic OK, y Word ahora registrará sus acciones. Pegar Ctrl + H para traer el Encontrar y reemplazar diálogo.
- Introduzca "Sociedad para la preservación de aparatos dentales antiguos" en Buscar y "Liga de preservación de antigüedades dentales" en Reemplazar.
- Hacer clic Reemplaza todo para ejecutar la operación Buscar y reemplazar. Ésta es la única acción que desea grabar. No importa si la macro realmente reemplaza algún texto. El punto es guardarlo para otros documentos.
- Esto es importante: haga clic en Desarrollador> Detener grabación. De lo contrario, la macro incluirá todas las acciones posteriores.
Ahora veamos tu obra. Abra un documento que contenga el nombre de la sociedad. Hacer clic Desarrollador> Macros. Si hace doble clic en ChangeSocietyName, Word realizará automáticamente la operación Buscar y reemplazar.
Consejo: Mientras graba la macro, es posible que deba realizar una acción que no desea que se registre. Por ejemplo, es posible que desee copiar y pegar texto en el cuadro de diálogo Buscar y reemplazar en lugar de escribirlo manualmente. No hay problema: solo haz clic Desarrollador> Pausar grabación, copie y pegue el texto, luego haga clic en Desarrollador> Reanudar grabadora. Luego, puede completar la grabación de macros como se describe arriba.
Aunque aquí nos centramos en Microsoft Word, también puede usar macros para aumentar la productividad en Excel. Y hay muchos macros de ahorro de tiempo para Microsoft OneNote.
¿Sabía que puede automatizar tareas repetitivas en Microsoft Excel utilizando macros? Le mostraremos cómo grabar una macro en Excel 2016 para ahorrar mucho tiempo.
Buceando en el código
Ahora profundizaremos en nuestra nueva macro de Word. Ir Desarrollador> Macros, pero en lugar de hacer doble clic en la macro, selecciónela y haga clic en Editar. Esto abre el editor de Visual Basic, un entorno autónomo para crear aplicaciones VBA.
Puede parecer abrumador, pero puede ignorar los menús y la mayoría de los paneles. En cambio, concéntrese en la ventana que contiene el código. Como puede ver, Word acaba de escribir una macro que realiza la búsqueda y reemplazo.
Sub ChangeSocietyName ()
'
Macro 'ChangeSocietyName
'Renombrar Sociedad para la Preservación de Aparatos Dentales Antiguos
'
Selección. Encontrar. Formato claro
Selección. Encontrar. Reemplazo. Formato claro
Con selección. Encontrar
.Text = "Sociedad para la Preservación de Aparatos Dentales Antiguos"
.Reemplazo. Text = "Liga de preservación de antigüedades dentales"
. Adelante = Verdadero
.Wrap = wdFindContinue
.Formato = Falso
.MatchCase = Falso
.MatchWholeWord = Falso
.MatchWildcards = Falso
.MatchSoundsLike = Falso
.MatchAllWordForms = Falso
Terminar con
Selección. Encontrar. Ejecutar Reemplazar: = wdReplaceAll
End Sub
Expliquemos qué está pasando aquí.
El "sub" en la primera línea es la abreviatura de "subrutina", un pequeño programa que puede ejecutarse por sí solo o como parte de una aplicación VBA más grande. Las líneas precedidas por comillas simples son para comentarios. Las comillas le dicen a VBA que ignore cualquier declaración en esas líneas.
Luego llegamos al meollo del código: el código que realiza el Encontrar y reemplazar operación. Como puede ver, especifica valores para cada opción en el cuadro de diálogo Buscar y reemplazar, incluido el texto y el texto de reemplazo entre comillas. los Selección. Encontrar. Ejecutar comando cerca del final es equivalente a hacer clic en el botón "Reemplazar todo".
Modificar la macro
Para usar macros, no tiene que meterse con el código ni siquiera mirarlo. Pero puedes sacar más provecho de esta función si estás dispuesto a sumergirte. Por ejemplo, suponga que comete un error tipográfico al grabar la macro. En lugar de volver a grabarlo, puede ir a Visual Basic y solucionarlo.
También puede modificar la macro para que sea más útil, y eso es lo que haremos aquí. Cuando ejecuta Buscar y reemplazar, ya sea manualmente o mediante una macro, Word recuerda el texto de búsqueda y reemplazo. La próxima vez que abra el cuadro de diálogo Buscar y reemplazar, se verá así.
Sería mejor borrar los valores para que obtengamos un cuadro de diálogo limpio. Lo haremos con una segunda macro, excepto que esta vez, lo haremos directamente en Visual Basic.
- En el editor de Visual Basic, seleccione la subrutina completa, desde la primera línea hasta End Sub. Pegar Ctrl + C para copiarlo.
- Coloque el cursor debajo de End Sub y presione Ctrl + V. Acabas de duplicar la subrutina.
- Cambie el nombre de ChangeSocietyName a ClearFindReplace (o cualquier otro nombre que le convenga). Esto es importante porque VBA generará un mensaje de error si intenta ejecutar macros con nombres duplicados.
- En el .Texto y Reemplazo. Texto valores, elimine el texto pero deje las comillas. Esencialmente, le está diciendo a Word que no encuentre nada y lo reemplace con nada, pero también está borrando esos valores.
El resultado debería verse así:
Sub ClearFindReplace ()
'
'ClearFindReplace Macro
'Borrar texto del cuadro de diálogo Buscar y reemplazar
'
Selección. Encontrar. Formato claro
Selección. Encontrar. Reemplazo. Formato claro
Con selección. Encontrar
.Texto = ""
.Reemplazo. Texto = ""
. Adelante = Verdadero
.Wrap = wdFindContinue
.Formato = Falso
.MatchCase = Falso
.MatchWholeWord = Falso
.MatchWildcards = Falso
.MatchSoundsLike = Falso
.MatchAllWordForms = Falso
Terminar con
Selección. Encontrar. Ejecutar Reemplazar: = wdReplaceAll
End Sub
Ahora volveremos a la macro ChangeSocietyName. Debajo del código de Buscar y reemplazar, pero antes de End Sub, ingrese ClearFindReplace (sin paréntesis al final).
Así es: no es necesario que ingrese todo el código que acaba de crear, solo el nombre de la macro.
Sub ChangeSocietyName ()
'
Macro 'ChangeSocietyName
'Renombrar Sociedad para la Preservación de Aparatos Dentales Antiguos
'
Selección. Encontrar. Formato claro
Selección. Encontrar. Reemplazo. Formato claro
Con selección. Encontrar
.Text = "Sociedad para la Preservación de Aparatos Dentales Antiguos"
.Reemplazo. Text = "Liga de preservación de antigüedades dentales"
. Adelante = Verdadero
.Wrap = wdFindContinue
.Formato = Falso
.MatchCase = Falso
.MatchWholeWord = Falso
.MatchWildcards = Falso
.MatchSoundsLike = Falso
.MatchAllWordForms = Falso
Terminar con
Selección. Encontrar. Ejecutar Reemplazar: = wdReplaceAll
ClearFindReplace
End Sub
Cuando Word ejecuta ChangeSocietyName, primero ejecutará la función original Buscar y reemplazar. Luego interpretará ClearFindReplace como un comando para ejecutar la segunda macro.
Yendo más lejos con VBA
Como puede ver, la función de grabación de macros de Word puede ayudarlo a ahorrar tiempo de innumerables formas. Puede crear macros para automatizar casi cualquier operación y, en el editor de Visual Basic, puede modificar el macros, incrustar una macro dentro de la otra, o crear una subrutina que ejecute múltiples macros una después de la otro.
Debido a que VBA es un lenguaje de programación completo, puede incorporar las subrutinas en aplicaciones más grandes con variables, bucles, declaraciones condicionales y más. Y una vez que haya aprendido los conceptos básicos de VBA en Word, puede aplicar gran parte de ese mismo conocimiento para crear macros en Microsoft Excel y Access.
Para llevarlo más lejos, querrá aprender más sobre las convenciones de VBA y el editor de Visual Basic, por ejemplo, cómo organizar su código y cómo lidiar con errores. Pero incluso si desea seguir con funciones simples como las que se describen aquí, puede hacer mucho para mejorar su productividad.
Si usa Excel con regularidad, vale la pena aprender a crear macros VBA y obtener acceso a muchas más funciones y capacidades.
- Productividad
- Microsoft Word
- Microsoft Office 365
- Microsoft Office 2016
- Consejos de Microsoft Office
- Microsoft Office 2019
- Macros
Stephen Beale es un escritor de tecnología desde hace mucho tiempo que vive en el área de San Francisco. Es autor de numerosos libros sobre aplicaciones informáticas en la edición y el diseño gráfico, y fue editor de noticias y reseñas de Macworld. Actualmente dirige The Steampunk Explorer, un sitio web popular para los entusiastas del steampunk.
Suscríbete a nuestro boletín
¡Únase a nuestro boletín de noticias para obtener consejos técnicos, reseñas, libros electrónicos gratuitos y ofertas exclusivas!
Un paso más…!
Confirme su dirección de correo electrónico en el correo electrónico que le enviamos.