Notifications
Clear all

Caixa de texto para filtrar em tabela dinâmica

7 Posts
2 Usuários
0 Reactions
1,632 Visualizações
(@g-pinho)
Posts: 5
Active Member
Topic starter
 

Pessoal, boa noite,

Estou precisando de uma ajuda: possuo uma tabela dinâmica com uma base de dados bastante extensa. Assim, quando os usuários têm que filtrar um determinado item, devem buscar na lista do filtro da tabela dinâmica, demandando bastante tempo. Gostaria que a inserção do item ocorresse via uma caixa de texto, onde o usuário digitaria o item desejado e este foste filtrado na tabela dinâmica.

Em anexo, coloco um exemplo para ilustrar a necessidade.

Se puderem me ajudar, agradeço enormemente.

Gustavo

Os arquivos devem ser compactados, é regra do fórum!!!!!

 
Postado : 10/04/2013 6:43 pm
(@g-pinho)
Posts: 5
Active Member
Topic starter
 

Desculpem a falha, segue o arquivo compactado.

 
Postado : 11/04/2013 9:08 am
(@alminen)
Posts: 77
Trusted Member
 

Vai no Editor do VBA (Alt+F11), seleciona a planilha que contém a tabela dinãmica e adiciona o seguinte código:

Private Sub TextBox1_Change()
On Error Resume Next
ActiveSheet.PivotTables(1).PivotFields("Item").ClearAllFilters
    ActiveSheet.PivotTables(1).PivotFields("Item").CurrentPage = TextBox1.Value
End Sub

Aqui funcionou!

 
Postado : 11/04/2013 9:30 am
(@g-pinho)
Posts: 5
Active Member
Topic starter
 

Funcionou! Obrigado!!!

 
Postado : 11/04/2013 9:59 am
(@g-pinho)
Posts: 5
Active Member
Topic starter
 

Amigos, mais uma dúvida:

É possível definir que a inserção dos dados da textbox só seja feita após clicar em um botão?

Desde já, obrigado!

Gustavo

 
Postado : 11/04/2013 12:52 pm
(@alminen)
Posts: 77
Trusted Member
 

Claro! Adicione um botão (ActiveX) e insira no código:

Private Sub CommandButton1_Click()
On Error Resume Next
ActiveSheet.PivotTables(1).PivotFields("Item").ClearAllFilters
    ActiveSheet.PivotTables(1).PivotFields("Item").CurrentPage = TextBox1.Value
End Sub
 
Postado : 11/04/2013 2:35 pm
(@g-pinho)
Posts: 5
Active Member
Topic starter
 

Alminen,

Funcionou perfeitamente! Era exatamente o que eu precisava. Obrigado pela ajuda!!!!

 
Postado : 11/04/2013 3:36 pm