Tenho macros programadas no Excel 2010 e pretendo passar a usá-las no LibreOffice. É possível? Como devo proceder?
Se você é o autor das macros e sabe programar em VB, é meio caminho andado.
-
A primeira tentativa é colocar no início (topo) do módulo, a opção
Option VBASupport 1
Option Compatible
e rodar sua macro pra ver se passa. V. pode ter sorte se não tiver de mexer em caixas de diálogo e outras coisas mais sofisticadas. Se for VB puro, há boas chances.
- Senão, rescrever ou modificar a macro.
A linguagem de programação “Star Basic” e o VBA são quase idênticas, a lógica de programação poderá ser preservada.
Ambas usam Sub, Function, Dim, End Sub, End Function, If-Then-Else - EndIf, etc…
O que muda são os objetos, por exemplo, no VB
oSheet = Sheet("Plan1")
torna-se
oSheet = ThisComponent.Sheets.getSheetByName("Plan1")
Portanto, suas macros deverão ser rescritas com os objetos do LibreOffice.
O melhor livro para macros no LibreOffice está disponível para baixar neste endereço:
https://wiki.documentfoundation.org/Documentation/Publications/pt-br#Macros