Notifications
Clear all

AutoFiltro com condições diferentes

4 Posts
3 Usuários
0 Reactions
1,146 Visualizações
(@dracko2007)
Posts: 0
New Member
Topic starter
 

Olá galera, não sei como explicar direito mas tenho um arquivo onde na coluna A1, tem o nome dos funcionário.

Existe 2 grupos de funcionários, um o grupo A(alpha) e o outro β(beta).

na coluna B1:C1 tem a data 2017/3/1 na coluna D1:E1 a data de 2017/3/2 e assim por diante, de 2 em 2 colunas vai uma data, pois na mesma data tem o grupo A e o Grupo B. Então na coluna B1:C1 mesmo sendo a mesma data na coluna B1 vai o Grupo A, na coluna C1 vai o grupo B.

quando um funcionário falta usamos o ■ como critério, quando ele esta de licença médica usamos o ★ como critério em ambos grupos, e o ▲ seria a presença, então:
Ficaria assim:

A questão é que eu fiz uma macro pelas bases no meu mínimo conhecimento e, eu consigo fazer um um autofiltro somente quando a data esta nas linhas e não por colunas,
o codigo é o seguinte:

Sub Macro1()

ActiveSheet.Range("$A$6:$CP$1125").AutoFilter Field:=2, Criteria1:="=■", _
Operator:=xlOr, Criteria2:="=★"

End Sub

gostaria que alguém me ajuda-se, como eu posso fazer com que o código leia a data do dia, e filtre somente esse dia EX: hoje é dia 22 então seria a coluna BE, eu sei que se eu mudar o Field:=2 para 57 que seria a coluna BE da certo, mas gostaria que isso fosse automático.

alguém poderia me ajudar ? o resto do código que montei deu certo, quando mudo manualmente o field da certo, gostaria de um HELP,

grato desde já.

 
Postado : 21/03/2017 8:51 pm
(@mprudencio)
Posts: 0
New Member
 

Disponibilize o arquivo.

 
Postado : 22/03/2017 5:50 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Como voce mesmo percebeu,o autofiltro não le o valor da coluna, esse valor é passado Field=2 (entenda-se Filtro pela Campo coluna 2 ("B")). Outro "agravante" pelo que entendi é ter o titulo (data) da coluna em célula mesclada.

Uma possibilidade :
Declare uma variavel tipo data, atribua a essa variavel o valor da data que deseja; procure esse valor na linha de titulos
Se ver seu arquivo vamos no CHUTOMETRO

Sub Macro1()
Dim nDt as date
Dim nCol as integer
nDt=Hoje() 'altere para a sua data
nCol=application.Match(nDt,range("A2:BX2") 'Supondo que a linha 2 seja suas datas e va ate coluna Bx
ActiveSheet.Range("$A$6:$CP$1125").AutoFilter Field:=nCol, Criteria1:="=■", _
Operator:=xlOr, Criteria2:="=★" 

End Sub
 
Postado : 22/03/2017 5:58 am
(@dracko2007)
Posts: 0
New Member
Topic starter
 

Olá Reinaldo obrigado pela ajuda, eu acho que eu sou inteligente mas os cara aqui é tudo extraterrestre kkkkk manja muito, mas da um pequeno erro por que na mesma data tem 2 colunas a A(alpha) e B(beta) então procura exatamente a que eu quero somente a A(alpha) então fiz uma pequena modificação, estou anexando o arquivo teria como dar uma olhada por favor ?

https://drive.google.com/file/d/0Bx40vN ... pTV3M/view

Grato

 
Postado : 22/03/2017 6:54 pm