Vou usar esse espaço para responder uma pergunta do ( @Rafael_Vilela ), que foi feita no vídeo do youtube do @Dio
Essa foi a pergunta:
Só por curiosidade amigo. Funciona direito os macros do Libreoffice + python? Pergunto, por que só não migrei do microsoft office por conta do VBA. Mas estou doido para usar o Pop OS no trabalho, só uso em casa.
Aqui vai um relato de como usar Macros em Python no LibreOffice e deixar elas embutidas no documento:
Primeiro, no Linux precisa ter o provider python no libreoffice, no Windows normalmente já vem por padrão:
$sudo apt-get install libreoffice-script-provider-python -y
Vai precisar da extensão APSO para editar e embutir as macros em python diretamente no documento (planilha, texto…) do libreoffice.
nas configurações do APSO eu escolho editor de python que uso - VS Code:
No Linux: /usr/share/code/code
No Windows, versão Portable: C:\Portable\VSCode.[Portable]\Code.exe
No Documento:
(Shift + alt + F11) exibe o gerenciador de macros em pyhton, existe um inconveniente, a macro só pode ser editada enquanto esse gerenciador estiver sendo exibido. Como ele usa um editor externo de python vc precisa ficar atento. Se vc fechar a janela do Gerenciador de macro no libreoffice, tudo o que vc editar no arquivo python que esta no editor python será perdido.
A dica é fechou o Gerenciador de Janela das macros, fecha também o arquivo no VScode. Se precisar editar novamente aperta (Shit + alt + F11) e edita novamente a macro pelo editor externo.
Menu > Edit , no Gerenciador de Janela das macros
Esse foi o problema que eu tive até agora, já perdi muitas edições por esse problema. Pois para testar a macro eu normamente fecho o gerenciador de macros e uso o documento do libreffice normalmente para efetuar uma ação, o problema é que o editor externo mantem o arquivo do modulo python aberto. Se a macro não se comportou como o esperado, e eu preciso reedita-la, é muito mais intuitivo eu ir direto no Vs code que já está com o arquivo aberto e continuar mexendo no código da macro. Esse é o problema…
Para fazer a edição eu tenho que fechar o arquivo no VScode e abrir novamente o Gerenciador de macro em python e abir novamente modulo pelo editor externo.
Mas como acho a linguagem em pyhton mais fácil e mais poderosa de usar que vba, eu me adaptei a contornar esse problema…
Indico também a extensão ZAZ-pip pra adicionar pacotes do python para usar no libreoffice:
https://gitlab.com/mauriciobaeza/zaz-pip/-/blob/develop/files/ZAZPip_v0.5.0.oxt
https://vimeo.com/369488703
https:// vimeo.com/369488703
#################
veja tambem:
https://wiki.documentfoundation.org/Macros/Python_Guide
obs:
em opções do Libreoffice, vc deve alterar a segurança das macros para permitir sua execução