Notifications
Clear all

Formatação Condicional + Filtro Automático é possível?

11 Posts
3 Usuários
0 Reactions
2,341 Visualizações
(@sofiatomas)
Posts: 17
Eminent Member
Topic starter
 

Bom dia pessoal
Estou com uma dúvida na minha planilha. Em uma coluna eu usei uma formatação condicional para que as células fiquem em vermelho caso exista um valor que eu defini em uma outra célula, caso contrario ficará com a formatação original. Nessa tabela eu preciso que seja exibido apenas as linhas que no caso ficaram com aquela formatação em vermelho, portanto, usei um filtro para selecionar por cor. O meu problema é que o filtro não é automático, ou seja, tenho que ficar filtrando toda vez que as células em vermelho ou não, são alteradas. Será que existe um meio para que seja filtrada automaticamente?

 
Postado : 16/01/2014 6:50 am
(@gtsalikis)
Posts: 2373
Noble Member
 

Sofia,

Dá pra fazer o que vc quer com VBA, aliás, a cor vermelha talvez seja dispensável, se vc vai visualizar somente o que estaria em vermelho. Porém, o ideal é que vc coloque um modelo compactado da sua planilha com o critério detalhado de quando vai ser visualizado o que.

 
Postado : 16/01/2014 6:58 am
(@sofiatomas)
Posts: 17
Eminent Member
Topic starter
 

Gtsalikis,

Vamos fazer assim, a minha tabela tá em crianção e está muito bagunçada ainda, mas fica fácil explicar. Na coluna B vão ter os argumentos ATIVO e INATIVO, faça com que apenas as linhas com o termo ATIVO sejam visualizadas. É possível fazer isto com VBA então? Ah, para ter o argunto ATIVO ou INATIVO usarei uma fórmula, tem problema?

 
Postado : 16/01/2014 7:12 am
(@gtsalikis)
Posts: 2373
Noble Member
 

Sofia,

Talvez não tenha problema, mas pra usar vba fica muito vago dessa forma. Como vc está com a planilha em criação, seria o ideal que vc fizesse tudo o que quer fazer na planilha, e deixasse o vba por último. Daí sim, vc coloca o modelo anexo aqui, pra ver essa parte.

PS: pode ser que algum colega pense diferente.

 
Postado : 16/01/2014 7:33 am
(@sofiatomas)
Posts: 17
Eminent Member
Topic starter
 

Gtsalikis,

Por mim pode colocar o código aqui que eu consigo acertar depois caso eu tenha que mudar algo. É que estou fazendo uns testes pra ver se funciona dessa forma, se não terei que procurar outras alternativas. Se você puder passar para mim testar aqui agradeço. Aproveitando o tópico, você sabe me informar se é possível usar mais de um filtro na mesma coluna?

 
Postado : 16/01/2014 7:45 am
(@gtsalikis)
Posts: 2373
Noble Member
 

Nesse caso, seria algo assim:

Private Sub Worksheet_Change(ByVal Target As Range)

Dim i As Integer
i = 8
If Target.Row = 4 And Target.Column = 4 Then
    Do Until IsEmpty(Cells(i, "B")) = True
        If Cells(i, "B").Value = "Inativo" Then Rows(i).Hidden = True
        If Cells(i, "B").Value = "Ativo" Then Rows(i).Hidden = False
        i = i + 1
    Loop
End If
End Sub

Considerei que as informações começam na linha 8, por isso i = 8 (vc deve ajustar)

Também considerei que a planilha vai filtrar quando vc alterar a célula D4, por isso a linha:
If Target.Row = 4 And Target.Column = 4 Then
ou seja, linha 4, coluna 4. vc deve alterar tb.

Coloque o código direto na planilha, não crie módulos.

Quanto a mais de um filtro, não é possível, mas vc pode filtrar mais de uma informação.

 
Postado : 16/01/2014 7:55 am
(@sofiatomas)
Posts: 17
Eminent Member
Topic starter
 

Gtsa

Ficou excelente, era isso mesmo que eu queria. Só queria saber como fazer uma alteração. Essa célula D4 que você usou ali, gostaria de saber se tem com ser de uma outra aba, ou seja, quero que na ABA1 seja ocultado as linhas, porém quando a célula D4 da ABA2 for alterada. É possível?

 
Postado : 16/01/2014 8:32 am
(@gtsalikis)
Posts: 2373
Noble Member
 

como eu disse antes, sem o modelo de planilha, vamos ficar alterando e alterando o código.

 
Postado : 16/01/2014 8:43 am
(@sofiatomas)
Posts: 17
Eminent Member
Topic starter
 

Gtsalikis

Não terá mais alterações, pois funcionou certinho aqui. Só o que eu preciso é isso mesmo, mas se for incomodo tudo bem, eu mantenho na mesma aba. Só uma dúvida, não é possível salvar um projeto com senha para abrir quando tem vba? Fiz um teste aqui e quando abro em outro micro ele desabilita a função VBA se tiver senha no arquivo

 
Postado : 16/01/2014 9:01 am
(@gtsalikis)
Posts: 2373
Noble Member
 
Private Sub Worksheet_Change(ByVal Target As Range)
Dim i As Integer
i = 8
If Target.Row = 4 And Target.Column = 4 Then
    With Sheets("Nome da planilha onde estão as linhas para filtrar")
        Do Until IsEmpty(.Cells(i, "B")) = True
            If .Cells(i, "B").Value = "Inativo" Then .Rows(i).Hidden = True
            If .Cells(i, "B").Value = "Ativo" Then .Rows(i).Hidden = False
        i = i + 1
        Loop
    End With
End If
End Sub

Sobre o outro erro, não sei porque acontece.

 
Postado : 16/01/2014 10:05 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Caso seja necessário reabrir o tópico, o autor poderá enviar uma MP para um dos moderadores solicitando o desbloqueio.

 
Postado : 16/01/2014 11:11 am