Notifications
Clear all

Ocultar linhas após uma linha específica

7 Posts
4 Usuários
0 Reactions
1,422 Visualizações
(@jalexm)
Posts: 77
Trusted Member
Topic starter
 

Olá.
Alguém saberia de uma macro para ocultar todas as linhas localizadas após uma determinada linha cujo conteúdo fosse uma palavra específica.
Por exemplo, ocultar todas as linhas após a linha que contém a palavra "TOTAL".
Alguém sabe?

Obrigado.

 
Postado : 21/02/2014 1:27 pm
Weslley
(@weslley)
Posts: 90
Trusted Member
 

Anexa a planilha simulando o resultado esperado para analisarmos.

Se a resposta foi útil, clique na mãozinha do lado da ferramenta Citar

Atenciosamente,

Weslley Henrique S.S.
MOS (Microsoft Office Specialist)

"O impossível é uma questão de tempo!"
(Alberto Saltiel)

 
Postado : 21/02/2014 1:29 pm
(@gtsalikis)
Posts: 2373
Noble Member
 

Pode ser assim:

Sub Procura_OcultaLinhas_GT()
Application.ScreenUpdating = False
On Error GoTo FIM
Dim Celula
Celula = UsedRange.Find("Total").Row
Range("A1:A" & Rows.Count).EntireRow.Hidden = False
Range(Cells(Celula, "A"), Cells(Rows.Count, "A")).EntireRow.Hidden = True
FIM:
Application.ScreenUpdating = True
End Sub

Lembre-se de AGRADECER aos que te ajudaram, e de marcar o tópico como [Resolvido]
Gente que cuida de gente.

Gilmar

 
Postado : 21/02/2014 1:39 pm
(@jalexm)
Posts: 77
Trusted Member
Topic starter
 

Anexa a planilha simulando o resultado esperado para analisarmos.

Talvez nem precise enviar anexo.
Só queria ocultar automaticamente todas as linhas da planilha após uma certa linha, em geral, seria a linha de rodapé onde fica a palavra TOTAL.
Acontece que a planilha não tem um número de linhas fixas, pois dados podem entrar e sair.
Tentei selecionando todas as linhas após TOTAL e ocultando manualmente.
Porém, ao excluir uma linha, algumas linhas ocultas reaparecem.
Essa é a situação.

 
Postado : 21/02/2014 1:45 pm
(@jalexm)
Posts: 77
Trusted Member
Topic starter
 

Pode ser assim:

Sub Procura_OcultaLinhas_GT()
Application.ScreenUpdating = False
On Error GoTo FIM
Dim Celula
Celula = UsedRange.Find("Total").Row
Range("A1:A" & Rows.Count).EntireRow.Hidden = False
Range(Cells(Celula, "A"), Cells(Rows.Count, "A")).EntireRow.Hidden = True
FIM:
Application.ScreenUpdating = True
End Sub

Funcionou perfeitamente.
Teria como acionar essa macro sempre que uma linha fosse excluída, que é quando ocorre o problema das linha ocultas reaparecerem.
Não conheço um evento da planilha que seja disparado quando uma linha é excluída.
Tem jeito?

 
Postado : 21/02/2014 2:20 pm
(@gtsalikis)
Posts: 2373
Noble Member
 

tenta o worksheet_Change

Lembre-se de AGRADECER aos que te ajudaram, e de marcar o tópico como [Resolvido]
Gente que cuida de gente.

Gilmar

 
Postado : 21/02/2014 2:24 pm
Fernando Fernandes
(@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.

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

 
Postado : 21/02/2014 5:21 pm