Tutorial para manejo de Macros Python en Libreoffice Calc: Hello World en Python y libreofficeCalc
Por: Alexander Arias
1. Descargar componente APSO
https://extensions.libreoffice.org/en/extensions/show/apso-alternative-script-organizer-for-python
2. Abrir Libreoffice Calc
ir a:
Herramientas -> Gestor de Extensiones (Crtl+Alt+E)
-> Añadir
Buscamos el archivo apso-v2.oxt, donde lo guardamos
3. Aceptamos licencia
Copyright Tsutomu Uchino/Hubert Lambert
4. Esperamos mientras añade APSO a nuestras Extensiones de libreoffice
5. Cerrar, el mismo libreoffice pide reiniciar
6. Abrimos de nuevo libreoffice Calc
7. Vamos a: Herramientas -> Gestion en Python (Alt + May + F11)
8. Escogemos: Macros de libreoffice -> HelloWorldPython
Los script de python estan ubicado en:
C:\Program Files\LibreOffice\share\Scripts\python
9. Podemos hacer varias cosas al abrir Guiones en Python APSO v1.2.8
- Modificar
- Depurar
- Interprete "Python"
10. Si escogemos - Depurar
Nos abre un Depurador que nos muestra el código
Y lo podemos ejecutar paso a a paso
11. Hola Mundo para escribir "Hello World" en A1
Editemos en un archivo nuevo
Tomo como referencia:
https://tutolibro.tech/2019/08/16/libreoffice-calc-python-programming-part-2-hello-world/
# This program displays 'Hello World!" in cell A1 of the
# current Calc document.
def HelloWorld():
"""Write 'Hello World!' in Cell A1"""
# get the doc from the scripting context
# which is made available to all scripts
desktop = XSCRIPTCONTEXT.getDesktop()
model = desktop.getCurrentComponent()
# access the active sheet
active_sheet = model.CurrentController.ActiveSheet
# write 'Hello World' in A1
active_sheet.getCellRangeByName("A1").String = "Hello World!"
12. Guardo lo anterior en el archivo: macro_001.py
Lo copio en en la ruta con permisos de administrador:
C:\Program Files\LibreOffice\share\Scripts\python
Recomendación: En el Editor que manejemos debemos abrirlo como administrador para copiar en esa carpeta
13. Ejecución del Script en python, en libreofficeCalc:
Herramientas -> Gestion en Python (Alt + May + F11)
Sale una ventana: Guiones en Python
14. En la ventana del punto anterior:
Busco: macro_001
Dentro de ella aparece la Función: HelloWorld
Le doy en el botón: Ejecutar, o simplemente doble click en la función
15. Verificar que en la celda A1 se escribió "Hello World"
Ahora puede hacer ensayos cambiando el texto: "Hola Mundo"
16. Si quiero ver algo en consola: macro_002.py
def evaluar():
print('Introduce las medidas')
medida = "60 / 100"
resultado = eval(medida)
print(resultado)
17. Quiero ver el resultado anterior en B2, adiciono la siguiente función al archivo creado:
def evaluar2():
desktop = XSCRIPTCONTEXT.getDesktop()
model = desktop.getCurrentComponent()
active_sheet = model.CurrentController.ActiveSheet
medida = "60 / 100"
resultado = eval(medida)
#print(resultado)
active_sheet.getCellRangeByName("B2").String = resultado
No hay comentarios:
Publicar un comentario