none
Ocultar e Exibir colunas com critério RRS feed

  • Pergunta

  • Desenvolvi uma planilha de Escala de serviço para facilitar meu trabalho utilizando formulas e formatação condicional, agora para concluir ela gostaria de "ocultar e exibir" as colunas de acordo com o mês que for selecionado, preciso de ajuda para desenvolver um macro para criar um botão que faça isso para mim.

    ao selecionar o valor da célula F2 (lista suspensa com valores iguais aos meses do ano) e clicar no botão de "exibir" as colunas não equivalentes a opção selecionada ficarem ocultas

    EXEMPLO:

    quando F2=JANEIRO

    oculto todas as colunas no intervalo H:NH que não forem dias do mês de janeiro

    se F2=MARÇO

    oculta todas as colunas no intervalo H:NH que não forem dias do mês de maço

    se F2=ANUAL

    exibe todas as colunas no intervalo H:NH

    OBS:

    para facilitar todas as colunas da primeira linha representam a abreviação do mês

    sábado, 25 de março de 2017 20:40

Todas as Respostas

  • Cole o código abaixo na planilha em que deseja que ocorra o efeito:

    Private Sub Worksheet_Change(ByVal Target As Range)
        Dim HideRange As Range
        Dim iCol As Range
        Dim FindString As String
        
        If Intersect(Target, Range("F2")) Is Nothing Then GoTo Quit
        
        Set HideRange = Columns("H:NH")
        HideRange.Hidden = False
        
        Select Case Range("F2")
            Case "JANEIRO": FindString = "jan"
            Case "FEVEREIRO": FindString = "fev"
            Case "MARÇO": FindString = "mar"
            '...continue aqui
            Case Else: GoTo Quit
        End Select
        
        Application.ScreenUpdating = False
        For Each iCol In HideRange.Columns
            If iCol.Cells(1) <> FindString Then iCol.Hidden = True
        Next iCol
        Application.ScreenUpdating = True
        
    Quit:
    End Sub
    


    http://www.ambienteoffice.com.br || Grupo de WhatsApp: https://chat.whatsapp.com/K1uey5Q4yJdKnsgWkVQAZG

    domingo, 26 de março de 2017 13:03
    Moderador
  • this.dataGridView1.Columns["CustomerID"].Visible = false;
    segunda-feira, 27 de março de 2017 16:27