Podemos ejecutar cualquier macro disponible en LibreOffice. De forma predeterminada se llaman a las macros en Python localizadas en el perfil de usuario. ### **call** ```py import easymacro as app def mostrar_info(): app.msgbox(app.INFO_DEBUG) return def main(args=None): macro = { 'library': 'examples', 'name': 'mostrar_info', } app.macro.call(macro) return ```
#### Macros compartidas. Ejecutar una macro compartida en LibreOffice Macros. ```py macro = { 'library': 'HelloWorld', 'name': 'HelloWorldPython', 'location': 'share', } app.macro.call(macro) ```
#### Macros en Basic Ejecutar una macro Basic. ```vbscript Sub mostrar_info() MsgBox "Mejor usa Python :)" End Sub ``` ```py macro = { 'language': 'Basic', 'library': 'Standard', 'module': 'Module1', 'name': 'mostrar_info', } app.macro.call(macro) ```
#### Macros en JavaScript Si ejecutas este ejempplo, asegurate de ejecutarlo con un documento Writer abierto, la macro de ejemplo en JavaScript esta disponible en LibreOffice. ```py macro = { 'language': 'JavaScript', 'library': 'HelloWorld', 'name': 'helloworld.js', 'location': 'share', } app.macro.call(macro) ```
Cualquier macro se puede ejecutar en otro hilo. ```py app.macro.call(macro, True) ```
Más información en: [Scripting Framework URI Specification][1]
[1]: https://wiki.documentfoundation.org/Documentation/DevGuide/Scripting_Framework#Scripting_Framework_URI_Specification