Bom dia, alguém sabe como utilizar a função linha via macro utilizando o funcservice?
seria isso que precisa?
https://forum.openoffice.org/en/forum/viewtopic.php?f=20&t=78686#p360733
aqui no explemplo, foi usado a função PROCV que em inglês é VLOOKUP
LINHA() ficaria ROW()
Sempre que for usar formulas via Basic “macro”, ela deve ser escrita em lnglês
veja no arquivo de como obter o nome das fórmulas em inglês
Sub traduzirFormula
Dim oDoc, oPlanAtiva, oOrigem, oDestino As Object
Dim myCelFormula, myEnFormula As String
oDoc = ThisComponent
oPlanAtiva = oDoc.CurrentController.ActiveSheet
oOrigem = oPlanAtiva.getCellRangeByName("A2")
oDestino = oPlanAtiva.getCellRangeByName("A7")
oTeste = oPlanAtiva.getCellRangeByName("A10")
'captura a formula na célula A2, conteúdo em inglês
myCelFormula = oOrigem.formula
'remove o sinal de "=" no início da formula
myEnFormula = Right(myCelFormula, Len(myCelFormula)-1)
'Escreve a formula o conteúdo da formula na celula A7, como um texto. Sem o sinal de "=" no início
oDestino.setString(myEnFormula)
'Escrever fórmulas no idioma local
oPlanAtiva.getCellRangeByName("A9").FormulaLocal = "=SOMA(LINHA()+2)"
'Escrever fórmulas em inglês
oTeste.setFormula("=SUM(ROW()+2)")
End Sub
tem também a opção
.FormulaLocal
que é possível usar a fórmula no idioma local
Bom dia, agradeço a ajuda, porém o que realmente preciso é de um exemplo utilizando o funcservice como no exemplo a seguir: FuncService.CallFunction(“ROW”, ARRAY(…)).