Pergunte aqui
3

Macro para atualizar Tabela Dinâmica

perguntadas 2013-09-12 16:35:05 +0200

imagem do gravatar de Adrianflamenguista

updated 2019-04-07 22:27:36 +0200

imagem do gravatar de Leandro Vieira

Bom dia!

Crei uma macro no calc a fim de atualizar a tabela dinâmica, contudo, a mesma não é atualizada. Alguém poderia me ajudar? No help do LO há algumas situações em que uma ação não é gravada. Sendo assim, tentei gravei a macro pelo teclado, mas não dá certo. Será que a simples ação de atualizar a planilha não pode ser gravada?

Abs, Adriano

editar alterar tag assinalar como ofensivo fechar mesclar Excluir

3 Respostas

1

respondidas 2013-09-12 19:00:02 +0200

imagem do gravatar de Grafeno

updated 2015-04-22 15:56:57 +0200

Bom dia,

Se não me engano o recurso gravar macro é experimental e instável, por isso precisa ser ativado nas Opções Avançadas do LibreOffice.

Sempre que usar é bom ir na IDE conferir o código para ver se não existe alguma linha crucial "comentada" pelo "gravador" por engano.

Mas, de qualquer forma, veja se a macro abaixo será útil no seu caso:

'----------------------------------------------------------------
'   Atualiza a primeira Tab. Dinâmica da Planilha Ativa
'----------------------------------------------------------------
Sub AtualizarTabDinamica
Dim PlanAtiva as Object
Dim TabDinam1 as Object

    'Obter a Planilha Ativa e a Tabela Dinâmica
    PlanAtiva = ThisComponent.getCurrentController.getActiveSheet()
    TabDinam1 = PlanAtiva.DataPilotTables.getByIndex(0)

    'Atualizar a Tabela Dinâmica
    TabDinam1.refresh()
End sub

...
At.te,
Grafeno

editar assinalar como ofensivo Excluir Link mais

Comentários

Grafeno, muito obrigado! Show de bola... deu certo. Esta comunidade está estimulando-me a usar cada vez mais o LO.

imagem do gravatar de AdrianflamenguistaAdrianflamenguista ( 2013-09-12 20:43:43 +0200 )editar

Adrian, fico feliz em ajudar. E realmente a troca de experiências e soluções é que enriquece o uso de um software. - - Outra coisa, já que a macro resolveu seu problema, você poderia marcar a resposta como correta? É só clicar no botão idicado na imagem http://s2.postimg.org/g1866huw5/image.jpg - - Vai ser muto bom para quem for pesquisar as questões respondidas.

imagem do gravatar de GrafenoGrafeno ( 2013-09-19 21:44:10 +0200 )editar

Feito. Obrigado Grafeno.

imagem do gravatar de AdrianflamenguistaAdrianflamenguista ( 2013-09-19 22:14:58 +0200 )editar

Obrigado Adrian!

imagem do gravatar de GrafenoGrafeno ( 2013-09-19 22:16:43 +0200 )editar
0

respondidas 2019-04-07 22:48:20 +0200

Tenho estas duas:

'================================================|
sub AtualizarTabelaDimamicaPorCelula (x as string)
' exemplo uso: AtualizarTabelaDinamicaCel "Planilha1.c7"
' observação: indicar uma célula da Tabela Dinâmica.
'================================================|
dim args1(0) as new com.sun.star.beans.PropertyValue
args1(0).Name = "ToPoint"
args1(0).Value = x 'indicar uma célula da Tabela Dinâmica.
dispatcher.executeDispatch(document, ".uno:GoToCell", "", 0, args1())
dispatcher.executeDispatch(document, ".uno:RecalcPivotTable", "", 0, Array())
end sub



'================================================|
Sub AtualizaTabelaDinamicaPorNumero (x as integer)
' exemplo uso: AtualizarTabelaDinamicaN 1
' observação: indicar o numero da Tabela Dinâmica.
' Desenvolvida por Grafeno.
'================================================|
'Obter a Planilha Ativa e a Tabela Dinâmica
PlanAtiva = ThisComponent.getCurrentController.getActiveSheet()
TabDinam1 = PlanAtiva.DataPilotTables.getByIndex(x) 'x = Numero Tabela
'Atualizar a Tabela Dinâmica
TabDinam1.refresh()
End sub
editar assinalar como ofensivo Excluir Link mais
0

respondidas 2016-01-07 15:09:09 +0200

Pelo que vi a macro atualiza a primeira dinâmica da planilha. No meu caso tenho várias dinâmicas na mesma planilha, como faço para a macro atualizar todas?

editar assinalar como ofensivo Excluir Link mais

Comentários

Ai no caso é preciso alterar o código acrescentando um Loop para percorrer todas as tabelas dinâmicas da planilha atualizando-as. Vc poderia abrir uma nova pergunta com sua dúvida que eu posto o código adaptado.

imagem do gravatar de GrafenoGrafeno ( 2016-01-17 18:44:43 +0200 )editar
Login/Registrar para responder

Ferramentas de perguntas

1 seguidor

Estatísticas

Perguntadas: 2013-09-12 16:35:05 +0200

Lidas: 2,145 vezes

Última atualização: Apr 07