Story Transcript
Macros
1
Macros
2
MACROS - DEFINICIÓN Con las macros, podemos automatizar un conjunto de procedimientos y ejecutarlos con un único comando. Pueden ser grabaciones sencillas de pulsaciones, comandos y clics con los botones del ratón o programas sofisticados que se creen. El uso de macros nos hará ganar tiempo a la hora de realizar tareas repetitivas. Algunas de las tareas que podemos automatizar con una macro son las siguientes: Abrir y organizar un conjunto de archivos que se usan conjuntamente. Acelerar las rutinas de dar formato y editar texto. Abrir un documento y moverse inmediatamente a la última posición editada. Simplificar las selecciones de los cuadros de diálogo. La forma más fácil de crear una nueva macro es grabar las pulsaciones y comandos con el grabador de macros de Word. Cuando se activa el grabador de macros, Word almacena todas las pulsaciones y selecciones de comandos como comandos de Visual Basic. Podemos asignar las macros a botones de las barras de herramientas, o teclas de método abreviado. Después de grabar una macro, podremos reproducirla en cualquier momento: Haciendo clic en un botón. Pulsando teclas de método abreviado. Usando el cuadro de diálogo Macro. También podemos modificar una macro grabada o escribirla partiendo de cero utilizando Visual Basic. Visual Basic permite desarrollar macros complicadas que representen opciones, obtengan datos de los usuarios y que realicen virtualmente cualquier tarea de Word. Una macro de Word puede consistir en unas pocas líneas o en hasta cientos de líneas de código.
Macros
3
MACROS GLOBALES Y DE PLANTILLA Se puede almacenar una macro tanto como una plantilla de documento sencilla como en una plantilla global. Por defecto, Word almacena las macros en la plantilla Normal (Normal.dot), de forma que se pueden usar con cualquier documento. Las macros de plantilla se almacenan en una plantilla específica y sólo estarán disponibles para los documentos basados en esa plantilla. Si cambiamos de opinión más adelante sobre la posición de la macro almacenada, podremos usar el Organizador para copiar macros de una plantilla a otra. Guardaremos las plantillas como plantillas globales sólo cuando se vayan a compartir por muchos documentos. Las macros diseñadas para un tipo específico de documento o para fines especializados deben ser guardadas con la plantilla asociada con ese tipo de documento.
Macros
4
Macros
5
GRABAR Y GUARDAR MACROS Cuando se graban macros, Word aceptará solamente algunas acciones con el ratón para almacenarlas en una macro. Podemos usar el ratón para seleccionar los comandos pero no para mover o seleccionar texto dentro de un documento. Los cuadros de diálogo son grabados dentro de las macros sólo si se selecciona Aceptar. Esta acción graba las asignaciones de todas las opciones del cuadro de diálogo. Si los cuadros de diálogo tienen varias pestañas, sólo se pueden grabar las opciones de una pestaña cuando se seleccione Aceptar en dicha pestaña. Si se pulsa la tecla retroceso sobre texto que acabamos de teclear, no se grabará el texto suprimido. Algunos elementos, como la regla cambian entre las condiciones, en cuyo caso, la grabadora de macros graba un único estado, VerRegla. Si la regla está mostrada, VerRegla desactiva la regla y a la inversa. Como resultado, al ejecutar una macro grabada, se podría realmente desactivar la Regla cuando realmente queremos que se muestre. ¡¡OJO!! Si queremos usar una macro en otro documento, debemos asegurarnos de que ninguno de sus comandos depende del documento original.
GRABAR MACROS Antes de crear una macro, debemos decidir si vamos a afectar a una parte especial del documento, a una parte seleccionada del documento, o a todo el documento. Si la macro afecta siempre a una parte específica del documento, insertaremos marcadores en el documento que den nombre al texto o gráfico específicos de forma que la macro pueda moverse a esas posiciones que hayamos seleccionado cuando ejecutemos la macro, realizaremos la selección antes de comenzar a registrar la macro. Para grabar una macro que afecte a todo el documento, nos aseguraremos de que no hay nada seleccionado cuando comencemos a grabar. Abriremos la plantilla en la que deseemos almacenar la macro, y prepararemos el documento de forma que se encuentre en el mismo estado que, en el futuro, garantice el funcionamiento de la macr Si deseamos que la macro esté disponible para todos los documentos, basaremos el documento en la plantilla Normal.dot. Si queremos utilizar la macro solamente en los documentos con una plantilla específica, abriremos un documento basado en esa plantilla. Macros
6
NOTA: Podemos ver en qué plantilla está basado un documento seleccionado: Archivo, Propiedades. Para grabar una macro 1.- Abrimos un documento basado en la plantilla a la que deseemos aplicar la macro. Si hemos previsto hacer que la macro sea global, podemos abrir cualquier documento basado en cualquier plantilla, y seleccionar la plantilla Normal.dot en el cuadro de diálogo Grabar macro. 2.- Procedemos de una de las dos formas siguientes para abrir el cuadro de diálogo de la figura:
Hacemos doble clic en el indicador GRB de la barra de estado. Seleccionamos Herramientas, Macro, Grabar nueva macro. 3.- Tecleamos un nombre para la macro en el cuadro de texto Nombre de macro. Los nombres de las macros deben comenzar con una letra, pero se pueden incluir números después de la primera letra. Pueden tener hasta 80 caracteres, y no pueden contener espacios o símbolos. Podemos utilizar una combinación de letras mayúsculas y minúsculas para identificar la macro más fácilmente. 4.- Si deseamos almacenar la macro como, nos aseguramos de seleccionar Todos los documentos (Normal.dot) en la lista Guardar macro en. Introducimos una descripción en el cuadro de texto Descripción para que nos ayude a recordar la función de la macro. Esta descripción se muestra en la barra de estado del cuadro de diálogo Macros cuando se selecciona el nombre de la macro. Se introducen automáticamente la fecha actual y el autor como descripción, pero puede ser más útil tener una descripción más informativa cuando se trabaja con las macros. Macros
7
5.- Seleccionamos Aceptar. El indicador GRB, que estaba difuminado, cambia a negrita y se mostrará la barra de herramientas Grabar macro en la ventana del documento como muestra la figura. El puntero del ratón tomará la forma de una cinta de cassette.
6.- Realizaremos las acciones que deseemos grabar. Si deseamos hacer una pausa en la macro, haremos clic en el botón Pausar grabación de la barra de herramientas Grabar macro. Haremos clic una segunda vez en ese botón para reanudar la grabación. 7.- Cuando hayamos terminado de introducir las acciones de la macro, procederemos de una de las siguientes formas: Seleccionamos el botón Detener grabación de la barra de herramientas Grabar macro para detener la grabación. Las letras del indicador GRB se difuminan cuando se detiene la grabación y desaparece el icono en forma de cassette. Seleccionamos el comando Herramientas, Macros, Detener grabación para detener la grabación. Tendremos cuidado para no asignar a su nueva macro el mismo nombre de otra macro existente en Word. Los nuevos comandos de macro reemplazarán a los existentes y Word puede no funcionar como debería. Para asegurarnos de que no vamos a utilizar un nombre de macro de Word, seleccionamos Herramientas, Macro, Macros y seleccionamos Comandos de Word en la lista Macros en para comprobar si el nombre se está utilizando. NOTA: Debemos utilizar uno de los procedimientos del paso 7 para detener la grabación. Seleccionando la barra de herramientas Detener la grabación no finaliza la grabación. Si observamos que el ratón y el teclado funcionan en forma más lenta de lo normal, es posible que se sigamos grabando la macro.
Macros
8
ASIGNAR UNA MACRO A UNA BARRA DE HERRAMIENTAS Para hacer que una macro sea incluso más fácil de usar, podemos crear un botón en cualquier barra de herramientas y después hacer clic en el botón para ejecutar la macro. Si preferimos usar las teclas de método abreviado, podemos asignar la macro a una combinación específica de teclas. Para mayor flexibilidad, podemos asignar los dos métodos a la macro. Para asignar una macro a una barra de herramientas, seleccionamos: Herramientas, Macro, Grabar nueva macro para abrir el cuadro de diálogo Grabar macro que vimos en la figura anterior. Introducimos el nombre y la descripción de la macro y seleccionamos la plantilla donde se va a guardar la macro. Seleccionamos el icono Barras en el área Asignar macro a para abrir el cuadro de diálogo de la figura. Seleccionamos la pestaña Comandos, si no está ya seleccionada y hacemos una de las siguientes cosas: Si la barra de herramientas a la que deseamos agregar el botón está visible en la ventana del documento, haremos clic en la macro del cuadro Comandos y la arrastraremos desde el cuadro de diálogo a una posición de la barra de herramientas. Soltamos después el botón del ratón. El nuevo botón aparecerá en la barra de herramientas. Si la barra de herramientas no está visible, entonces hacemos clic en la pestaña Barras de herramientas y activamos la casilla de la barra de herramientas deseada. La barra de herramientas correspondiente se mostrará inmediatamente. Regresamos a la pestaña Comandos y arrastramos el comando de la macro a la barra de herramientas. Para cambiar las opciones del botón de la macro, seleccionamos la pestaña Opciones:
Macros
9
ASIGNAR UNA MACRO A UNA COMBINACIÓN DE TECLAS Muchas personas prefieren utilizar el teclado en lugar del ratón para la mayor parte de las acciones. Para asignar una macro a una combinación de teclas: 1.- En el cuadro de diálogo Grabar macro, seleccionamos primero el icono Teclado después de introducir toda la información y antes de comenzar a grabar la macro. Se abrirá el cuadro de diálogo de la figura.
2.- Con el punto de inserción en el cuadro de texto Nueva tecla de método abreviado, pulsamos la combinación de teclas a las que deseamos asignar la macro. Si esta combinación está asignada ya, Word presenta una lista de la asignación actual debajo del cuadro Nueva tecla de método abreviado. Por ejemplo, si introdocimos Alt+F9, Word indicará que esa combinación está asignada a la macro de Word está asignada a VerCódigosDeCampo. 3.- Cambiamos la combinación de teclas por una que no esté ya asignada, seleccionamos después Asignar y después Cerrar para comenzar a grabar la macro. Si se asigna una nueva macro a una combinación de teclas, se reemplazará la asignación existente. Por ejemplo, Alt+F9 ya no mostraría los códigos de campo del documento, si es sustituido por otra macro con esa combinación de teclas.
Macros
10
Si deseamos asignar una macro existente a una barra de herramientas o a una tecla de método abreviado, una que hayamos grabado previamente o proporcionada por Word, podemos usar el cuadro de diálogo Personalizar (Herramientas, Personalizar, pestaña Comandos). Seleccionamos Macros en la lista desplegable Categorías. Se mostrará una lista de macros disponibles en la plantilla actual. Haremos clic y arrastraremos hasta la barra de herramientas el comando de la macro como antes, o bien utilice el botón Teclado para abrir el cuadro de diálogo Personalizar teclado en donde podremos seleccionar la macro que deseemos y asignar una combinación de teclas de método abreviado.
GUARDAR MACROS Una macro nueva no se guarda automáticamente en el disco sino que sólo es almacenada en la memoria. Es necesario guardar las macros de la plantilla antes de cerrar la plantilla a la cual están asignadas. Las macros globales deben ser guardadas antes de salir de Word. Cuando guardemos un documento cuya plantilla haya cambiado agregando una macro, Word preguntará si deseamos guardar los cambios de la plantilla. Si intentamos salir de Word y no hemos guardado las macros que hayamos agregado a la plantilla Normal, Word preguntará si deseamos guardar esos cambios.
Macros
11
Macros
12
EJECUTAR MACROS La forma de ejecutar una macro depende de cómo la hayamos asignado (tecla de método abreviado, comando de menú, o barra de herramientas). Si no la hemos asignado de una de esas tres formas, ejecutará la macro usando el cuadro de diálogo Macros. Podemos ejecutar una macro global en cualquier momento puesto que la plantilla Normal está siempre disponible. Si deseamos ejecutar una macro que hayamos almacenado en una plantilla específica, debemos o bien abrir la plantilla en sí, o abrir un documento que esté basado en esa plantilla. Si la macro está diseñada para funcionar con elementos seleccionados, los seleccionamos antes. Para ejecutar la macro, pulsaremos la tecla de método abreviado o seleccionaremos el botón de la barra de herramientas. Para ejecutar una macro usando el cuadro de diálogo Macros, abriremos el documento correspondiente y, si la macro está diseñada para trabajar con texto seleccionado, lo seleccionaremos. Seleccionamos Herramientas, Macro, Macros y después del nombre de la macro en el cuadro de lista Nombre de la macro. Seleccionaremos Ejecutar.
Si la macro que deseamos ejecutar no aparece en el cuadro de diálogo Macros, nos aseguramos de que hemos abierto un documento basado en la plantilla que la contiene. Podemos usar el Organizador para transferir una copia de la macro desde su plantilla actual a la Normal.dot, como se explica más adelante en la sección “Gestionar macros”. Puesto que los mismos comandos de Word son realmente macros, podemos mostrarlos y ejecutarlos directamente desde el cuadro de diálogo Macros. Seleccionando la opción Comandos de Word en la lista Macros en, se Macros
13
mostrará una lista de unos 1000 macros que corresponden a los comandos incorporados en Word.
Muchos de los nombres de esos comandos están organizados por la categoría de los menús de Word. Vemos que muchos de esos comandos no aparecen en el menú de Word pero pueden ejecutarse desde el cuadro de diálogo Macro. El cuadro Descripción muestra una breve explicación de la macro seleccionada. Observemos que los botones Modificar, Crear y Eliminar están difuminados, lo que indica que no se puede cambiar la lista de comandos de Word ni ninguno de los comandos de las macros.
COMPROBAR LA EXISTENCIA DE VIRUS Cuando seleccionemos ejecutar una macro de otro origen, como otro sistema o procedente del correo electrónico, Word muestra un cuadro de aviso sobre los virus de las macros. Un virus de macro puede ser activado al abrir un documento o una plantilla que tenga una macro infectada por el virus. Después invadirá nuestro sistema donde infectará todos los documentos que guarde. El virus puede ser transmitido a otras personas que abran esos documentos infectados. Si estamos seguros del origen de la macro, podemos seguir adelante y activar las macros. Si hay posibilidad de la existencia de virus, podemos abrir el documento o la plantilla con las macros desactivadas o no abrirlos en absoluto. Existe también la opción de mostrar el tema de Ayuda que trata de la comprobación de las macros de los documentos que puedan contener determinados virus.
Macros
14
EJECUTAR MACROS AUTOMÁTICAMENTE Word permite crear macros que se ejecutan automáticamente cuando se abra o se cierre un documento al iniciar o salir de Word. Cuando creemos una macro que se ejecute automáticamente, debemos darle un nombre usando uno de los cinco nombres exclusivos de macros de la tabla. El nombre que escojamos depende de lo que deseemos que realice la macro. Por ejemplo, podemos crear una macro que haga una de las siguientes cosas: Abrir automáticamente el último documento en el que ha estado trabajando. Solicitar información a los usuarios cuando creen un nuevo documento con una plantilla particular. Hacer regresar a su configuración a la forma en que se encontraban cuando inició Word, eliminando todas las asignaciones especiales que hubiéramos agregado durante una sesión. Realizar operaciones que apliquen formato a un documento cuando se abra.
Se puede crear sólo una macro con el nombre de macro AutoExec y AutoExit ya que son macros globales. Se pueden crear macros AutoNew, AutoOpen y AutoClose para diferentes plantillas o como macros globales. Todas esas macros están contenidas en la biblioteca de macros de Word. Las macros automáticas pueden ser almacenadas en la plantilla Normal o en otra o en un documento. La excepción es la macro AutoExec que debe ser almacenada en la plantilla Normal o en otra plantilla global en la carpeta Inicio para que se ejecute automáticamente cuando se inicie Word.
Macros
15
Impedir que se ejecuten las macros automáticas Para impedir que se ejecute una macro, mantendremos pulsada la tecla Mayús mientras realicemos la acción que inicia la macro. Ejecutar macros desde un código de campo Si deseamos obtener unos resultados realmente espectaculares, podemos insertar un campo de Word en un documento que ejecute una macro. El campo (BotónMacro) puede ser mostrado en el documento como texto o como un gráfico. Cuando hagamos doble clic en el campo, Word ejecutará la macro asignada a él.
Macros
16
Macros
17
MODIFICAR MACROS La grabadora de macros graba y almacena todas las acciones que se realicen en un documento de macro, como una o más instrucciones de Visual Basic. Emitir una instrucción de Visual Basic es lo mismo que seleccionar el comando correspondiente. Visual Basic, versión del popular lenguaje de programación BASIC, es utilizado en todas las aplicaciones de Microsoft Office. Podemos utilizarlo para modificar las instrucciones de las macros en forma muy parecida a un documento de texto normal. Para modificar una macro: 1.- Abrimos la plantilla que contenga la macro que desee modificar o abrimos un documento basado en esa plantilla y seleccionamos Herramientas, Macro, Macros. Seleccionamos el nombre de la macro en el cuadro de lista Nombre de la macro. 2.- Seleccionamos luego el botón Modificar. Se abrirá el editor de Visual Basic con el texto de la macro en la ventana de edición como se muestra en la figura.
Haremos los cambios deseados como lo haríamos en un documento normal. Cuando hayamos terminado, seleccionamos Archivo, Cerrar y luego volver a Microsoft Word. La macro se guarda en la memoria, pero tendremos que guardarla con el documento para guardarla en el disco.
Macros
18
ANÁLISIS DE UNA MACRO Antes de seguir, veamos el código generado al grabar una macro. Las primeras líneas muestran el nombre de la macro y unos comentarios. Todas las líneas que comiencen con apóstrofo son ignoradas por Word al ejecutar la macro y pueden tener cualquier tipo de información descriptiva. Por ejemplo, With y End With encierran las instrucciones de la macro que se refieren al mismo objeto, como a un texto seleccionado. Una línea With Selection.Font que el texto está seleccionado y que se ha abierto el cuadro de diálogo Font. La mayoría de las otras sentencias de una macro son opciones elegidas durante su grabación. Cada asignación es llamada una propiedad. Las dos últimas líneas cierran la macro y devuelven el control a Word. Eliminar comandos innecesarios Se pueden eliminar todas las instrucciones de Visual Basic relacionadas con las propiedades que no cambien sin perturbar el rendimiento de la macro. Igualmente los errores cometidos durante la grabación. Se eliminan comandos de una macro de la misma manera que se hace con otro texto: seleccione la línea y pulse Supr. La macro condensada se ejecutará más deprisa que la original.
AGREGAR ANOTACIONES Y COMENTARIOS A UNA MACRO Las anotaciones y los comentarios son útiles para recordar qué está sucediendo en una macro. En Visual Basic hay tres procedimientos para agregar información a una macro que Word ignorará al ejecutarla: 1. La instrucción REM procede del BASIC primitivo y se utilizaba para identificar la línea como una observación o comentario (remark). 2. El apóstrofo es usado ahora generalmente para indicar anotaciones y comentarios que se deseen ver en la macro pero que se desea que Word ignore al ejecutarla. 3. Pueden usarse tabulaciones para sangrar el texto, lo cual ayuda a comprender la estructura jerárquica de la macro.
Macros
19
A continuación se muestra un ejemplo de la utilización de comentarios y tabulaciones para explicar el comando beep de una macro: Sub BeepMacro( ) ‘ ‘ El comando Beep ‘ La instrucción Beep emite un sonido. ‘ Beep End Sub
Macros
20
Macros
21
GESTIONAR LAS MACROS Es probable que vayamos acumulando macros que hayan sobrevivido a su utilidad. Es una buena idea mantenerlas actualizadas y bien organizadas. Word permite gestionar sus macros de muchas formas. Se puede cambiar el nombre y eliminarlas, así como copiarlas entre plantillas. Usando el cuadro de diálogo del Organizador (Herramientas, Macro, Macros, botón Organizador) de la figura se puede gestionar las macros copiándolas en plantillas diferentes o cambiándolas el nombre. Por defecto, Word almacena las macros en la plantilla Normal de forma que estarán disponibles para ser usadas con todos los documentos de Word. Sin embargo, si se crean macros para un documento específico, guárdelas en una plantilla de ese documento. Esta técnica ayuda a mantener las plantillas menos desordenadas. El Organizador de Word es una herramienta flexible para gestionar elementos del proyecto macro y, como las barras de herramientas, estilos y entradas de Autotexto. La pestaña Elementos del proyecto macro está dividida en dos zonas, derecha e izquierda con listas de macros en las plantillas seleccionadas. Si seleccionamos un nombre de macro de cada lista, esa plantilla se convierte en el foco de la operación y, si se deseamos copiar una macro, es el origen de ella. Los títulos encima de las listas alternan entre A o En, según la lista que tenga la macro seleccionada. Las flechas Copiar cambian también de dirección en la forma correspondiente. Si se han grabado varias macros nuevas en la plantilla o documento actual, serán agrupadas en un proyecto macro con el nombre NewMacros en lugar de presentarse separadas en una lista. NOTA: Si una plantilla está protegida, debemos desprotegerla antes de eliminar una macro o cambiar su nombre. Seleccionamos Herramientas, Desproteger documento. Se nos pedirá que introduzcamos la contraseña si hemos asignado alguna cuando se protegió el documento.
COPIAR O MOVER MACROS ENTRE PLANTILLAS Algunas veces, es necesario copiar o mover una macro de una plantilla a otra. Para copiar o mover macros entre plantillas abiertas: 1.- Seleccionamos Herramientas, Macro, Macros, botón Organizador para ver el cuadro de diálogo Organizador de la figura. En el cuadro Macros disponibles en (lado izquierdo), seleccionamos la plantilla que tenga la macro que deseemos copiar o mover.
Macros
22
2.- Si deseamos copiar una macro almacenada en una plantilla, que no esté abierta, seleccionamos el botón Cerrar archivo para cerrar la plantilla abierta, y seleccionamos después el botón Abrir archivo (es el botón anterior que cambia de función) para abrir la plantilla que deseemos. Aparecerá el cuadro diálogo Abrir en el cual se podrá seleccionar la plantilla en la cual se desee copiar o mover macros desde el cuadro de lista Macros disponibles en (lado derecho). 3.- Si se desea mover o copiar una plantilla que no esté abierta, seleccionamos el botón Abrir archivo para abrir la plantilla. Seleccionamos las macros que deseemos mover o copiar. Para seleccionar una serie de macros consecutivos, mantenemos pulsada la tecla Mayús y hacemos clic en el primero y en el último elemento de la serie. Para seleccionar individualmente varios macros no consecutivos, mantenemos pulsada Control y hacemos clic en cada elemento. 4.- Procedamos de una de las siguientes formas: Para copiar las macros, seleccionamos el botón Copiar. Para mover las macros, seleccionamos primero el botón Copiar para copiar las macros seleccionadas. A continuación, necesitamos eliminar las macros de la plantilla original. Las seleccionamos de nuevo en el cuadro de lista Macros disponibles en (lado izquierdo) y seleccionamos el botón Eliminar. Aparecerá un cuadro de diálogo que nos pide la conformidad para eliminar. Seleccionamos Sí para eliminar una única macro o Sí a todo para eliminar varias macros con una confirmación antes de cada eliminación. 5.- Si deseamos copiar o mover macros adicionales de otras plantillas, repetimos los Pasos 2 a 4. Seleccionamos luego el botón Cerrar. Nos aseguramos de seleccionar el botón Sí para guardar las plantillas y las macros al cerrar el documento (o las plantillas) o al salir de Word.
Macros
23
ELIMINAR O CAMBIAR EL NOMBRE A UNA MACRO Si una macro está almacenada tanto globalmente (en Normal.dot) como en la plantilla activa, se la puede eliminar con el botón Eliminar del cuadro de diálogo Macro. Para eliminar una macro que esté almacenada en una plantilla sin abrir, utilizamos el cuadro de diálogo Organizador. También podemos cambiar el nombre de una macro en ese mismo cuadro de diálogo. Seguimos los pasos 1 a 4 de la tarea anterior pero, en lugar de seleccionar Copiar, seleccione Eliminar, o Cambiar nombre. Tecleamos el nuevo nombre y seleccionamos Aceptar. (Sólo se puede cambiar el nombre de una macro a la vez, por consiguiente deben seleccionarse de una en una). NOTA: No se puede eliminar una macro que esté abierta en una ventana de edición de macros. Si eliminamos una macro asignada actualmente al menú o a una barra de herramientas, Word suprime la asignación de la macro.
Macros
24