Notifications
Clear all

Macro - Ocultar e Mostrar Linhas

5 Posts
3 Usuários
0 Reactions
1,396 Visualizações
(@cris_mir)
Posts: 18
Active Member
Topic starter
 

Pessoal, boa tarde

Gostaria de uma ajuda para montar uma macro que verifique a ocorrência de uma condição em determinada linha e faça com que permaneça oculta ou seja mostrada e vice e versa. Para direcionar a realização da condição eu lancei a entrada da informação em uma aba "Entrada" e o efeito de ocultar ou mostrar deve acontecer na aba "relatório".

Segue planilha de modelo para análise.

Desde já agradeço

Cristiano

 
Postado : 13/04/2017 11:45 am
carlosrgs
(@carlosrgs)
Posts: 631
Prominent Member
 

Boa tarde Cristiano

Eu já achei na Rede vários códigos que ocultam linhas/colunas com determinado valor.

Mas confesso que embora quem escreveu os códigos sabem bem mais que eu, utilizo uma maneira mais simples, porque tive alguns problemas com as que eu achei.

Até tenho um tópico para tentar resolver.

http://www.planilhando.com.br/forum/viewtopic.php?f=10&t=18326

Eu colocaria essa macro para ocultar.

Sub Reexibe_Oculta()
    
    Rows("1:10").Select
    Selection.EntireRow.Hidden = False

    Range("G2").Select
    ActiveCell.FormulaR1C1 = "=IF(RC[-6]="""","""",1)"
    Selection.Copy
    Range("G2:G9").Select
    Selection.PasteSpecial Paste:=xlPasteFormulas, Operation:=xlNone, _
        SkipBlanks:=False, Transpose:=False
    Application.CutCopyMode = False
    
    Selection.Copy
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Selection.PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, _
        SkipBlanks:=False, Transpose:=False
    Application.CutCopyMode = False
    
    Columns("G:G").Select
    Selection.TextToColumns Destination:=Range("G1"), DataType:=xlDelimited, _
        TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, _
        Semicolon:=False, Comma:=False, Space:=False, Other:=False, FieldInfo _
        :=Array(1, 1), TrailingMinusNumbers:=True
    Range("G1:G9").Select
    Selection.SpecialCells(xlCellTypeBlanks).Select
    Selection.EntireRow.Hidden = True
End Sub

_______________________________________________________________________________________________
Carlos Santos
* Marque o tópico como Resolvido se foi solucionado seu problema.

 
Postado : 13/04/2017 1:09 pm
(@cris_mir)
Posts: 18
Active Member
Topic starter
 

carlosrgs, muito obrigado.

Entretanto quando todas as linhas são preenchidas, não restando espaços em branco, surge um erro na penultima linha do código:
Selection.SpecialCells(xlCellTypeBlanks).Select

Alguém sabe como resolver?

 
Postado : 13/04/2017 5:26 pm
(@jpedro)
Posts: 111
Estimable Member
 

Cristiano,

Veja se atende. Só não entendi em qual das plan vc vai executar a macro, mas isso é fácil de muda no código.

Abs!

 
Postado : 13/04/2017 6:19 pm
(@cris_mir)
Posts: 18
Active Member
Topic starter
 

Agora funcionou!!! Muito obrigado!!!

 
Postado : 14/04/2017 11:03 am