Macro para Ocultar/Exibir Linhas e Colunas

Vimos em artigos anteriores como a programação em VBA no Excel pode ser um diferencial na construção de planilhas mais elaboradas e mais eficientes. Uma aplicação que frequentemente é desenvolvida é a elaboração de Dashboards no Excel, que nada mais são do que painéis informando um conjunto específico de indicadores. Para este tipo de aplicação, o uso de botões de comando e macros em VBA é muito frequente. Com este uso, vem a necessidade de, eventualmente, ocultarmos ou exibirmos algumas colunas ou linhas no Excel. No artigo de hoje vamos entender como funciona o código em VBA para executar estas duas tarefas.

Vamos começar pelo código que oculta um grupo de colunas no Excel. Nossa função é mostrada abaixo.

Sub esconderColunas()

‘Escondendo colunas de B a D

Columns(“B:D”).EntireColumn.Hidden = True

End Sub

Se você não faz idéia de como ou onde inserir este código Clique Aqui para entender mais sobre macros ou aqui para aprender os recursos básicos do VBA.

Veja que o código é simples, mas vamos entender realmente o conceito. Após a declaração da função acrescentamos um comentário – em VBA, o comentário é marcado pelo caractere . O código que executa o comando de ocultar as colunas é o EntireColumn.Hidden que recebe o valor True. Neste trecho estamos dizendo ao Excel para, dado o intervalo de B até D, vamos esconder as colunas inteiras (EntireColumn.Hidden) atribuindo o valor True para validar. Intuitivamente já inferimos que, para mostrar as colunas escondidas, basta atribuir o valor False.

Sub mostrarColunas()

‘Mostrando colunas de B a D

Columns(“B:D”).EntireColumn.Hidden = False

End Sub

Construímos duas funções para atribuir cada uma aos botões da planilha abaixo.

1 - ocultar exibir linhas colunas excel

Assim, ao atribuir as macros para cada botão, podemos manipular nossa planilha para exibição ou não das colunas.

Como VBA é prática e lógica entendemos que, para realizar a mesma tarefa de ocultar ou exibir linhas, basta utilizar o mesmo princípio acima, com as funções:

Sub escondeLinhas()

‘Escondendo as linhas de 1 a 5

Rows(“1:5”).EntireRow.Hidden = True

End Sub

Sub mostraLinhas()

‘Mostrando as linhas de 1 a 5

Rows(“1:5”).EntireRow.Hidden = False

End Sub

Veja que nosso comando agora é EntireRow.Hidden. Faça o download das planilhas de exemplo deste artigo para estudar e para ajudar você a produzir documentos cada vez mais elaborados e eficazes.

Aprenda os primeiros passos para se tornar um “monstro” em VBA, CLIQUE AQUI e conheça o curso em 2 Ebooks.

Até o próximo artigo!