locked
Ocultar Colunas RRS feed

  • Pergunta

  • Preciso criar uma macro que oculte algumas colunas tendo como referência o valor de algumas células.Ex: Se o conteúdo das células selecionadas forem igual a zero as colunas correspondentes seriam ocultadas. Assim:

    Eu selecionaria um linha correspondente ao total de cada coluna e aquelas células que tiveram o valor igual a zero eu queria ocultá-las.

    A macro basicamente tem que consultar o valor das células selecionadas, comparar com uma condição e executar a rotina de ocultar a coluna correspondente a célula que satisfaz a condição.

    Também poderia me indicar um bom Livro de Excel com VBA.
    segunda-feira, 22 de setembro de 2008 22:27

Respostas

  • Muito Obrigado Adilson!!!

     

    Deus lhe pague

     

    Vlw

    terça-feira, 23 de setembro de 2008 22:54

Todas as Respostas

  • Acredito que este código te atenda:

    Code Snippet

    Sub OcultarColunas()

    Dim Referencia As Range
    Dim c As Integer

    'Abre um inputbox para que informe o intervalo de referência para testar o valor das colunas
    'Pode ser digitado diretamente, ou feita a seleção na planilha
    Set Referencia = Application.InputBox(Prompt:="Informe o intervalo de referência", Title:="Ocultar colunas", Type:=8)

    'Loop para todas as colunas do intervalo
    For c = 1 To Referencia.Columns.Count
    'Testa as células da primeira linha do intervalo informado
    'Se o conteúdo for zero a coluna é ocultada
    If Referencia.Cells(1, c) = 0 Then Referencia.Cells(1, c).EntireColumn.Hidden = True
    Next c

    End Sub





    Quanto à referência bibliográfica, eu recomendo: Excel - Power Programming With VBA (John Walkenbach)

    [ ]s
    terça-feira, 23 de setembro de 2008 10:28
  • Muito Obrigado Adilson!!!

     

    Deus lhe pague

     

    Vlw

    terça-feira, 23 de setembro de 2008 22:54
  • Acredito que este código te atenda:

    Code Snippet

    Sub OcultarColunas()

    Dim Referencia As Range
    Dim c As Integer

    'Abre um inputbox para que informe o intervalo de referência para testar o valor das colunas
    'Pode ser digitado diretamente, ou feita a seleção na planilha
    Set Referencia = Application.InputBox(Prompt:="Informe o intervalo de referência", Title:="Ocultar colunas", Type:=8)

    'Loop para todas as colunas do intervalo
    For c = 1 To Referencia.Columns.Count
    'Testa as células da primeira linha do intervalo informado
    'Se o conteúdo for zero a coluna é ocultada
    If Referencia.Cells(1, c) = 0 Then Referencia.Cells(1, c).EntireColumn.Hidden = True
    Next c

    End Sub

     

     




    Quanto à referência bibliográfica, eu recomendo: Excel - Power Programming With VBA (John Walkenbach)

    [ ]s
    Adilson, como ficaria o código caso eu queira testar sempre o mesmo range? como no meu caso o internvalo J1:IV1, ae nesse caso não apareceria a imput box, ele sempre testaria esse intervalo J1:IV1.

    Obrigado pela Ajuda.
    segunda-feira, 4 de maio de 2009 12:21