Célula vazia não tr...
 
Notifications
Clear all

Célula vazia não traz filtro

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

Boa tarde Galerinha,

alguém poderia me auxilia nesse código, tô tentando adicionar uma condição na linha de filtro DATA e FRENTE, caso a celula for vazia não filtra ela, filtra apenas FAZENDA, conloquei uma condição IF, mais não deu muito certo não

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

'Filtra a Fazenda
    ActiveSheet.Range("$A$10:$CM$3558").AutoFilter Field:=4, Criteria1:=Sheets("GRAFICOS").Range("B5").Value
  
  'Filtro data

'Se a celula N5 aba GRAFICOS for vazia não filtra a coluna data
    ActiveSheet.Range("$A$10:$CM$3558").AutoFilter Field:=2, Criteria1:=NmData
        
        
  'Filtro Frente
'Se a celula E7 aba GRAFICOS for vazia não filtra a coluna da frente
    ActiveSheet.Range("$A$10:$CM$3558").AutoFilter Field:=7, Criteria1:=Sheets("GRAFICOS").Range("E7").Value

'=========================================================================================================   '
'Segundo Filtro
    Sheets("Distribuição GERAL").Select
'Filtra a Fazenda
    ActiveSheet.Range("$A$11:$CM$2327").AutoFilter Field:=4, Criteria1:=Sheets("GRAFICOS").Range("B5").Value
    
    
    
'Se a celula N5 aba GRAFICOS for vazia não filtra a coluna data
    ActiveSheet.Range("$A$11:$CM$2327").AutoFilter Field:=2, Criteria1:=NmData
    End If
    
    
'Se a celula E7 da aba GRAFICOS for vazia não filtra a coluna da frente
    ActiveSheet.Range("$A$11:$CM$2327").AutoFilter Field:=9, Criteria1:=Sheets("GRAFICOS").Range("E7").Value
       End If
    
    
Sheets("GRAFICOS").Select
Range("A1").Select
End Sub
 
Postado : 17/03/2017 1:58 pm
brunoxro
(@brunoxro)
Posts: 698
Honorable Member
 

Boa tarde Fabio,

Anexe uma planilha de exemplo. Assim fica mais fácil ajudar.

att,

 
Postado : 17/03/2017 2:59 pm
fabio.cmaa
(@fabio-cmaa)
Posts: 0
Estimable Member
Topic starter
 

Bom dia,

segue anexo,

 
Postado : 20/03/2017 4:41 am
brunoxro
(@brunoxro)
Posts: 698
Honorable Member
 

Boa tarde Fabio,

Uma forma de fazer isso é colocar um IF de validação em cada 'Filtro', com a condição de só entrar na linha do comando do filtro se a célula for diferente de vazio.
Por exemplo:

    'Se o valor da célula for diferente de vazio
    If Sheets("GRAFICOS").Range("B5").Value <> Empty Then
        ActiveSheet.Range("$A$2:$CM$" & NFazen).AutoFilter Field:=5, Criteria1:=Sheets("GRAFICOS").Range("B5").Value
    End If

Faça algo similar aos outros critérios.

att,

 
Postado : 21/03/2017 1:07 pm
fabio.cmaa
(@fabio-cmaa)
Posts: 0
Estimable Member
Topic starter
 

Bom dia Brunoxro,

Era isso mesmo que precisava, grato pelo apoio,

segue meu like.

 
Postado : 30/03/2017 8:51 am