Asignando macros

From Apache OpenOffice Wiki
< ES‎ | Manuales‎ | GuiaAOO‎ | TemasAvanzados‎ | Macros‎ | StarBasic‎ | TrabajandoConOOo
Revision as of 21:49, 17 March 2013 by Salva (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search


Editing.png Esta página está en estado borrador.

Hasta ahora, hemos ejecutado todas nuestras macros desde el IDE o llamándolas desde el menú herramientas, pero también podemos asignar las macros para ejecutarlas a menús, barras de herramientas, combinaciones de teclas e incluso asignarlas a sucesos de la aplicación, por ejemplo; cuando abrimos un archivo, esto es sumamente útil y poderoso, veamos algunos ejemplos de como hacer esto, como primer paso, hay que escribir la macro que nos interesa asignar, algo tan sencillo como mostrar la fecha y hora actuales, claro, con un poco de formato para que sea vea bien:


 Sub MostrarFechayHora()
 Dim sMensaje As String
 
     sMensaje = Format( Now(), "dddd dd \d\e mmmm \d\el yyyy " & Chr(13) & _
                     "y \son la\s HH \ho\ra\s con mm \minuto\s"
 
     MsgBox sMensaje, 64,"Hoy es"
 
 End Sub


Ahora, tienes que decidir “cuando” o “como” quieres ejecutarla, veamos primero lo más sencillo, hagamos que se ejecute con una combinación de teclado, para ello, desde cualquier aplicación de OpenOffice.org, ve al menú Ver > Barra de herramientas > Personalizar... que te mostrara el siguiente cuadro de dialogo:


ES StarBasic TrabajandoConOOo.18.png


Asegúrate de que este seleccionada la ficha Teclado (1), así como mostrar las Combinaciones de teclas de OpenOffice.org (2). El siguiente paso es que escojas la combinación de teclas que quieres asignar a nuestra macro, para ello, desplázate en el cuadro de lista Combinación de teclas (3) y escoge la que más te guste, cuida de seleccionar una que este libre, te va a dar cuenta las que ya están en uso, por que delante de ellas tienen la tarea asignada (4), también notaras que algunas teclas, como por ejemplo la tecla  F1 , están en gris desactivadas, esto es por que estas teclas no puedes reasignarlas. Pero observa que tienes una amplia gama de opciones de donde escoger, para nuestro ejemplo, hemos seleccionado  CTRL  +  ⇧ Shift  +  M  (5), el siguiente paso es seleccionar la macro que deseamos ejecutar con esta combinación de teclas, para nuestro ejemplo, primero desplázate en el cuadro de lista Área (6) hasta encontrar la opción Macros de OpenOffice.org, despliega su contenido y seleccionar “user” que se refiere al archivo especial “Mis Macros”, solo te resta seleccionar la biblioteca y el modulo donde esta la macro a asignar, para nuestro ejemplo se llama MostrarFechayHora (7).


ES StarBasic TrabajandoConOOo.17.png


Observa como tienes opción de cargar combinaciones de teclas guardadas, así como de guardar las actuales y restablecer las predeterminadas, te queda de tarea “jugar” y experimentar con estas opciones.


Como ultimo paso, presiona el botón de comando Modificar (8) que asigna finalmente la combinación de teclas (9) a la macro seleccionada (10). Para terminar, presiona el botón de comando Aceptar.


ES StarBasic TrabajandoConOOo.16.png


Ahora, solo nos resta probar que funcione, desde cualquier documento, presiona la combinación de teclas seleccionada ( Ctrl  +  ⇧ Shift  +  M ) y si todo esta correcto, te tiene que mostrar:


ES StarBasic TrabajandoConOOo.15.png


Con un poco de imaginación puedes crear tus accesos directos para probar todas las macros que quieras de una forma sencilla. Ahora veamos como asignar una macro a un evento, a un suceso del sistema, para ello, vamos a crear una sencilla macro de ejemplo:


 Sub MostrarMensaje()
 Dim sMensaje As String
 
     sMensaje = "No te olvides de guardar tu documento"
 
     MsgBox sMensaje, 64,"Creando documento"
 
 End Sub


Ve al menú Ver > Barra de herramientas > Personalizar..., esta vez, selecciona la ficha Eventos (1) y asegúrate de seleccionar OpenOffice.org (2) para guardar la asignación que hagamos. Para nuestro ejemplo seleccionaremos el “evento” Crear documento (3) que se ejecuta cada vez que creamos un nuevo documento.


ES StarBasic TrabajandoConOOo.10.png


Ahora, con el botón de comando Macro... (4), te desplegara un cuadro de dialogo que ya conoces, solo te resta navegar dentro del archivo, la biblioteca y el modulo que contiene la macro deseada, selecciona la macro, presiona Aceptar y listo.


ES StarBasic TrabajandoConOOo.09.png


Observa como delante del “evento” queda seleccionada la macro, solo te resta presionar el botón de comando Aceptar y probar la macro, crea tantos nuevos documentos como quieras.


ES StarBasic TrabajandoConOOo.06.png


Con cada nuevo documento creado, de cualquier aplicación de OOo, te tiene que mostrar el mensaje:


ES StarBasic TrabajandoConOOo.05.png


Asignar macros a eventos no es un tema menor, pues puede ser tan sencillo como nuestros ejemplos o tan complejo como conectarte a bases de datos o a una página web y muchas cosas más, más adelante veremos a detalle el tema de los eventos y la asignación de macros. Asignar una macro a un menú o a una barra de herramientas es trivial, así que te queda de tarea intentar hacerlo.

ES.Plantillas.Logo foro es.png
Si tienes dudas acerca de lo aquí explicado, tienes algún problema con AOO,
o quieres ampliar la información, no dudes en dirigirte al

Foro Oficial en español de Apache OpenOffice para Macros y API UNO

Personal tools