Como ocultar colunas em tempo real com base na entrada do utilizador no Excel?
Ocultar colunas no Excel é uma tarefa comum, mas já alguma vez tentou fazê-lo automaticamente com base em determinados valores introduzidos? Por exemplo, ao digitar «AA» numa célula, a coluna A é ocultada; ao inserir «BB», as colunas B e C desaparecem; com «CC», as colunas D e E ficam ocultas; e ao introduzir «DD», é a coluna F que se esconde — tal como ilustrado abaixo. Este artigo apresenta um código VBA para resolver exatamente este cenário no Excel.
Utilize código VBA para ocultar ou mostrar colunas em tempo real com base na entrada do utilizador
Utilize código VBA para ocultar ou mostrar determinadas colunas com base na entrada do utilizador
Utilize código VBA para ocultar ou mostrar colunas em tempo real com base na entrada do utilizador
Para ocultar as Especificar coluna em tempo real com base nos valores introduzidos, aplique o seguinte código VBA:
1. Na folha de cálculo onde pretende ocultar colunas, clique com o botão direito do rato no separador da folha e selecione «Ver Código» no menu de contexto, conforme ilustrado na imagem seguinte.

2. Na janela «Microsoft Visual Basic para Aplicações» que se abriu, copie e cole o seguinte código VBA na janela «Folha (Código)».
Código VBA: Ocultar colunas em tempo real com base na entrada do utilizador
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
'Updateby ExtendOffice
xcell = Range("K1").Value
Select Case xcell
Case "AA": Columns("A").EntireColumn.Hidden = False
Columns("A").EntireColumn.Hidden = True
Case "BB": Columns("B:C").EntireColumn.Hidden = False
Columns("B:C").EntireColumn.Hidden = True
Case "CC": Columns("D:E").EntireColumn.Hidden = False
Columns("D:E").EntireColumn.Hidden = True
Case "DD": Columns("F").EntireColumn.Hidden = False
Columns("F").EntireColumn.Hidden = True
Case Else
Columns("A:G").EntireColumn.Hidden = False
End Select
End Sub
- Caso «AA»: Columns(«A»).EntireColumn.Hidden = False
- Columns(«A»).EntireColumn.Hidden = True

3. Em seguida, feche a janela do código. Agora, ao introduzir «AA» na célula K1 e premir Enter, a coluna A será ocultada; ao introduzir «BB» e premir Enter, as colunas B e C serão ocultadas — e assim sucessivamente. Se introduzir qualquer outro valor ou eliminar o conteúdo, as colunas ocultas serão imediatamente exibidas, conforme demonstrado abaixo:
Utilize código VBA para ocultar ou mostrar determinadas colunas com base na entrada do utilizador
Neste exemplo, irei filtrar um intervalo de dados com base num nome de produto introduzido. Ao digitar «Hoodie», apenas as informações relativas a Hoodie são exibidas, e as restantes colunas são imediatamente ocultadas; ao introduzir «All», todas as colunas são exibidas, conforme demonstrado abaixo:
1. Na folha de cálculo onde pretende ocultar colunas, clique com o botão direito do rato no separador da folha e selecione «Ver Código» no menu de contexto, conforme ilustrado na imagem seguinte:

2. Na janela «Microsoft Visual Basic para Aplicações» que se abre, copie e cole o seguinte código VBA na janela «Folha (Código)».
Código VBA: Ocultar ou mostrar colunas para filtrar dados com base na entrada do utilizador
Private Sub Worksheet_Change(ByVal Target As Range)
'Updateby ExtendOffice
Dim x As Variant, y As String
If Target.Address = "$K$1" Then
y = Target.Value
With Range("B1:H1")
Application.ScreenUpdating = False
.EntireColumn.Hidden = (y <> "All")
If y <> "All" Then
For Each x In .Cells
If x = y Then x.EntireColumn.Hidden = False
Next
End If
Application.ScreenUpdating = True
End With
End If
End Sub
3. Em seguida, feche a janela do código. Agora, ao introduzir o nome do produto na célula K1, apenas as colunas correspondentes serão exibidas e as restantes ocultadas; ao digitar «All», todas as colunas reaparecerão, conforme demonstrado abaixo:
As Melhores Ferramentas de Produtividade para o Office
Potencie as suas competências no Excel com Kutools para Excel e experimente uma eficiência como nunca antes.Kutools para Excel Oferece mais de 300 funcionalidades avançadas para impulsionar a produtividade e Economizar Tempo.Clique aqui para obter a funcionalidade de que mais precisa...
Office Tab Traz uma interface com separadores para o Office e torna o seu trabalho muito mais fácil
- Ative a edição e leitura com separadores no Word, Excel, PowerPoint, Publisher, Access, Visio e Project.
- Abra e crie vários documentos em novos separadores da mesma janela, em vez de em janelas separadas.
- Aumente a sua produtividade em 50 % e elimine centenas de cliques do rato todos os dias!
Todos os suplementos Kutools — num único instalador.
Kutools for Office reúne suplementos para Excel, Word, Outlook e PowerPoint, além do Office Tab Pro, sendo a solução ideal para equipas que trabalham em várias aplicações do Office.
- Pacote tudo-em-um— suplementos para Excel, Word, Outlook e PowerPoint + Office Tab Pro
- Um instalador, uma licença— configuração em minutos (pronto para MSI)
- Funciona melhor em conjunto— produtividade simplificada em todas as aplicações do Office
- Teste gratuito de 30 dias com todas as funcionalidades— sem registo, sem cartão de crédito
- Melhor relação qualidade-preço— poupe face à compra individual dos suplementos