Notifications
Clear all

Filtrar tabela usando textbox em um useform

4 Posts
2 Usuários
0 Reactions
774 Visualizações
(@brenocpin)
Posts: 4
New Member
Topic starter
 

Bom dia,

Sou iniciante em VBA e tive um problema em uma nova planilha minha. Criei um formulário para buscar alguma informação filtrando-as na planilha.
O valor digitado na textbox do formulário deveria ser inserido no filtro da tabela e me retornar os resultados referentes. Porém, quando digito o valor na textbox, além de filtra-la ele altera o valor da primeira celula da tabela, abaixo do titulo da coluna, pelo valor procurado na textbox.

Como prosseguir?

Segue código.

Private Sub cmdBuscar_Click()
Plan1.Range("a5") = txtConstrutora

'executa o filtro
ActiveSheet.Range("$A$5:$A$65000").AutoFilter Field:=1, Criteria1:=Range("a5")

txtConstrutora.SetFocus

End Sub

 
Postado : 15/04/2014 7:38 am
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Informação muito genérica.
Creio eu que A5 da plan1 seja a primeira célula da tabela, ou Não??
Eu diria para experimentar:

Private Sub cmdBuscar_Click()
'executa o filtro
ActiveSheet.Range("$A$5:$A$65000").AutoFilter Field:=1, Criteria1:=txtConstrutora.text
txtConstrutora.SetFocus
End Sub

Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel

 
Postado : 15/04/2014 7:50 am
(@brenocpin)
Posts: 4
New Member
Topic starter
 

Funcionou!

Porém quando executa a função, ele não só filtra, mas oculta todas as outras linhas que não contenham tal valor.

Tem alguma idéia do porque isso acontece?

Desde já agradeço.

 
Postado : 15/04/2014 8:02 am
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

A "função" do AutoFiltro e justamente essa, ocultar, na mesma planilha, valores que não atendam ao filtro desejado.
Caso não seja isso que estava esperando, é necessário decidir/estabelecer o que deseja/espera que seja executado

Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel

 
Postado : 15/04/2014 8:07 am