Vídeo recomendado
https://youtu.be/diWPPPhW-9E

Filtro em Tabela Dinâmica - VBA [RESOLVIDO]

Fórum para dúvidas sobre os fundamentos da linguagem de programação Visual Basic no contexto do VBA
Avatar do usuário
Fabio Trindade
Manda bem
Manda bem
Mensagens: 161
Registrado em: Dom Abr 24, 2011 4:07 pm

Filtro em Tabela Dinâmica - VBA [RESOLVIDO]

Mensagem por Fabio Trindade »

Boa tarde, Srs.

Estou com certa dificuldade em filtrar uma Tabela Dinâmica com VBA, pois tenho 5 shapes que recupero o nome conforme clicado, onde os nomes recuperados estão de acordo com os valores do filtro na tabela.

Não consegui avançar muito no projeto gostaria do auxilio dos senhores.

Toda e qualquer ajuda sempre é bem vinda !!

Segue uma base de exemplo:
base_tabela_dinamica.rar
(26.34 KiB) Baixado 802 vezes
Editado pela última vez por Fabio Trindade em Qui Out 30, 2014 9:36 pm, em um total de 1 vez.


Disable adblock

This site is supported by ads and donations.
If you see this text you are blocking our ads.
Please consider a Donation to support the site.


Avatar do usuário
Fabio Trindade
Manda bem
Manda bem
Mensagens: 161
Registrado em: Dom Abr 24, 2011 4:07 pm

Re: Filtro em Tabela Dinâmica - VBA

Mensagem por Fabio Trindade »

Boa noite a todos do fórum.

Despois de varias pesquisas e trocas de mensagem com alguns colegas consegui realizar filtro na Tabela Dinâmica com VBA.
Agradeço ao nosso colega alexandrevba que me ajudou me falando sobre o Segmentador de Dados e com alguns códigos até atender minha necessidade

Código alexandrevba

Código: Selecionar todos

Sub FiltraAleVBA_13343(stRegion As String)

	With ActiveSheet.PivotTables("TAXA_BOLETO").PivotFields("REGIONAL")
		.ClearAllFilters
		.PivotFilters.Add Type:=xlCaptionEquals, Value1:=stRegion
	End With

End Sub
O código depois de adaptado:

Código: Selecionar todos

Sub Filtro_Tabela_Dinamica()

Dim NomeObjeto As String
Dim IdObjeto As String

    NomeObjeto = Application.Caller
    IdObjeto = ActiveSheet.DrawingObjects(NomeObjeto).Text
    
    With ActiveSheet.PivotTables("TAXA_BOLETO").PivotFields("REGIONAL")
        .ClearAllFilters
        .PivotFilters.Add Type:=xlCaptionEquals, Value1:=IdObjeto
    End With

End Sub
A duvida esta nesse link: http://www.planilhando.com.br/forum/vie ... 10&t=13343
base_tabela_dinamica.rar
(24.37 KiB) Baixado 1672 vezes


Responder