Pergunte aqui
1

Como faço o end(xlup) no LibreOffice Basic [fechado]

perguntadas 2018-12-05 15:39:55 +0100

imagem do gravatar de crisdoxavier

updated 2018-12-06 19:34:17 +0100

Uso muito a propriedade end(xlup) no VBA para descobrir a última linha preenchida da planilha. Gostaria de saber como fazer isso no LibreOffice Basic. Abaixo um exemplo da função que uso no VBA

`

Function fUltimaLinhaPlan(PlanRef As String) As Long

fUltimaLinhaPlan = ThisWorkbook.Worksheets(PlanRef).Range("A1048576").End(xlUp).Row

End Function

`

editar alterar tag assinalar como ofensivo reabrir mesclar Excluir

Fechado pelo seguinte motivo A pergunta foi respondida, a resposta certa foi aceita por crisdoxavier
data do fechamento 2018-12-06 19:34:35.419137

1 Resposta

1

respondidas 2018-12-05 18:31:29 +0100

imagem do gravatar de Olivier

updated 2018-12-05 18:47:02 +0100

Solução 1

Se quiser pegar a ultima linha da primeira planilha (cujo índice é 0), pode usar a função GetLastUsedRow() existente na biblioteca Tools, módulo Misc

Sub Main
Dim oPlanilha As Object
GlobalScope.BasicLibraries.LoadLibrary("Tools")
oPlanilha= ThisComponent.Sheets(0)
print getLastUsedRow(oPlanilha)
End Sub

A biblioteca Tools está documentada nesta página:

https://help.libreoffice.org/6.1/en-U...

Solução 2

Acrescente a linha na entrada do seu módulo

Option VBASupport 1

A função tal como está na pergunta, vai funcionar... teste

editar assinalar como ofensivo Excluir Link mais

Comentários

Complementando, você pode tentar a dica nesta página:

https://help.libreoffice.org/6.1/pt-B...

imagem do gravatar de OlivierOlivier ( 2018-12-05 18:41:43 +0100 )editar

Olá. Testei a solução, mas ela tem um problema. Essa Função retorna a última linha menos 1. Naturalmente, posso fazer alguns ajustes. De qualquer forma, muito obrigado pela ajuda.

imagem do gravatar de crisdoxaviercrisdoxavier ( 2018-12-06 19:33:37 +0100 )editar
1

A API do LibreOffice retorna índices cuja origem é sempre Zero. Assim tem de adicionar 1 para ter o valor mostrado.

Se a pergunta foi respondida vote a favor e marque o 'v' na resposta.

imagem do gravatar de OlivierOlivier ( 2018-12-06 19:46:34 +0100 )editar

Ferramentas de perguntas

1 seguidor

Estatísticas

Perguntadas: 2018-12-05 15:39:55 +0100

Lidas: 32 vezes

Última atualização: Dec 06