Notifications
Clear all

Filtrar dados

10 Posts
4 Usuários
0 Reactions
1,604 Visualizações
fabio.cmaa
(@fabio-cmaa)
Posts: 0
Estimable Member
Topic starter
 

Bom dia galerinha,

estou tentando adicionar mais um filtro na programação mais não está funcionando, queria saber o pq

código abaixo:

Sub Filtrar_Fazendas()
Application.ScreenUpdating = False

'Primeiro Filtro
    Sheets("Sulcação, Insumos e Coberta GER").Select
    Selection.AutoFilter
    ActiveSheet.Range("$A$10:$CM$474").AutoFilter Field:=4, Criteria1:=Sheets("GRAFICOS").Range("B5").Value
'ActiveSheet.Range("$A$11:$CM$474").AutoFilter Field:=2, Criteria2:=Sheets("GRAFICOS").Range("N5").Value - EU ADCIONO ESSE CÓDIGO, DEVERIA FUNCIONAR, MAIS NÃO FUNCIONA


'Segundo Filtro
    Sheets("Distribuição GERAL").Select
    ActiveSheet.Range("$A$11:$CM$640").AutoFilter Field:=4, Criteria1:=Sheets("GRAFICOS").Range("B5").Value
'ActiveSheet.Range("$A$11:$CM$640").AutoFilter Field:=2, Criteria2:=Sheets("GRAFICOS").Range("N5").Value - EU ADCIONO ESSE CÓDIGO, DEVERIA FUNCIONAR, MAIS NÃO FUNCIONA


Sheets("GRAFICOS").Select
Range("A1").Select
End Sub

Segue anexo.

 
Postado : 14/03/2017 8:15 am
pfarias
(@pfarias)
Posts: 265
Reputable Member
 

Com o teu exemplo, tenta dessa forma:

Sheets("GRAFICOS").Select
ActiveSheet.Range("ENDEREÇO DA RANGE, COMO A11:CM640").AutoFilter _
                                        Field:="NUMERO DA COLUNA DA SELEÇÃO QUE SERA FILTRADO", _
                                        Criteria1:="VALOR DO CRITERIO"

Pietro Farias

Se foi resolvido suas dúvidas, lembre se de marcar o tópico como RESOLVIDO.

ANALISTA X

 
Postado : 14/03/2017 10:24 am
fabio.cmaa
(@fabio-cmaa)
Posts: 0
Estimable Member
Topic starter
 

Pietro poderia fazer na planilha ?

pq o código que vc me passou é igual ao meu, e não funcionou;

 
Postado : 14/03/2017 10:34 am
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Experimente:

Sub Filtrar_Fazendas()
Application.ScreenUpdating = False
Dim NmData As String
NmData = Format(Sheets("GRAFICOS").Range("N5").Value, "dd/mm/yyyy")

'Primeiro Filtro
    Sheets("Sulcação, Insumos e Coberta GER").Select
    Selection.AutoFilter
    ActiveSheet.Range("$A$10:$CM$474").AutoFilter Field:=4, Criteria1:=Sheets("GRAFICOS").Range("B5").Value
    ActiveSheet.Range("$A$11:$CM$474").AutoFilter Field:=2, Criteria1:=NmData
'Segundo Filtro
    Sheets("Distribuição GERAL").Select
    ActiveSheet.Range("$A$11:$CM$640").AutoFilter Field:=4, Criteria1:=Sheets("GRAFICOS").Range("B5").Value
    ActiveSheet.Range("$A$11:$CM$640").AutoFilter Field:=2, Criteria1:=NmData

Sheets("GRAFICOS").Select
Range("A1").Select
End Sub

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

 
Postado : 14/03/2017 10:38 am
pfarias
(@pfarias)
Posts: 265
Reputable Member
 

Os dados do código precisam ser alterados antes de rodar a macro.

Pietro Farias

Se foi resolvido suas dúvidas, lembre se de marcar o tópico como RESOLVIDO.

ANALISTA X

 
Postado : 14/03/2017 10:40 am
fabio.cmaa
(@fabio-cmaa)
Posts: 0
Estimable Member
Topic starter
 

Reinado não deu certo, caso queira fazer o teste na planilha,

Dim NmData As String
NmData = Format(Sheets("GRAFICOS").Range("N5").Value, "dd/mm/yyyy") já tinha feito esse teste, mais não deu certo, não sei onde tava errando.

Grato

 
Postado : 14/03/2017 11:10 am
fabio.cmaa
(@fabio-cmaa)
Posts: 0
Estimable Member
Topic starter
 

Pietro não deu certo tambem, fiz a troca conforme o solicitado, e só dava error

agradeço a disposição de vocês...

 
Postado : 14/03/2017 11:11 am
EdsonBR
(@edsonbr)
Posts: 1057
Noble Member
 

Fábio, boa tarde.

Revise os seguintes pontos:

'Primeiro Filtro
...
ActiveSheet.Range("$A$10:$CM$474").AutoFilter Field:=4, Criteria1:=Sheets("GRAFICOS").Range("B5").Value
'ActiveSheet.Range("$A$11:$CM$474").AutoFilter Field:=2, Criteria2:=Sheets("GRAFICOS").Range("N5").Value

*O range da segunda parte do primeiro filtro deveria partir de A10, não de A11
*Não há um Criteria2 para o Field2, pois vc só tem um critério nesse campo (data), então mude para Criteria1:=...
*Siga a recomendação do Reinaldo forçando o formato do critério Data como "dd/mm/yyyy", caso contrário o critério ficará no formato inglês (mês/dia/ano). Isto está no Help do objeto AutoFilter (bem confusamente escrito, diga-se de passagem)

'Segundo Filtro

*Zere qualquer filtro existente como vc fez no Primeiro Filtro na linha "Selection.AutoFilter"
*Quanto ao "Criteria2", idem ao acima
*Quanto ao formato de data, idem ao acima

 
Postado : 14/03/2017 12:52 pm
fabio.cmaa
(@fabio-cmaa)
Posts: 0
Estimable Member
Topic starter
 

Bem explicado do seu ponto de vista Edson, muito obrigado cara pela ajuda, tava sofrendo, e não achava onde,

 
Postado : 14/03/2017 1:01 pm
EdsonBR
(@edsonbr)
Posts: 1057
Noble Member
 

Se vc observar bem, o Reinaldo já tinha corrigido a questão do Criteria2 x Criteria1, tanto que ele usou a forma certa já no código dele.

 
Postado : 14/03/2017 1:03 pm