none
Ocultar Determinada Guia da planilha RRS feed

  • Pergunta

  • Pessoal,

    Inseri o comando abaixo para ocultar uma guia no meu projeto.

    Sub Ocultar_DIPJ()
    
    If Range("a1").Value = 0 Then
    ActiveWindow.DisplayWorkbookTabs = False
    End If
    
    End Sub

    Ela funciona perfeitamente, o único problema é q ela Oculta todas as 10 Guias da planilha, quando na verdade eu só queria q ela ocultasse a Guia com o nome "DIPJ". 

    O que posso fazer para q ela funcione direitinho?

    Valeu pela ajuda pessoal

    sábado, 29 de setembro de 2012 16:28

Respostas

  • O código que você está usando pode ser simplificado por:

    Sub Ocultar_DIPJ()
        Select Case Range("A1")
            Case 12
                Sheets("DIPJ").Visible = xlSheetVisible
            Case Else
                Sheets("DIPJ").Visible = xlSheetHidden
        End Select
    End Sub

    No entanto, você falou que gostaria que isso acontecesse automaticamente. No meu entendimento, ao abrir a pasta de trabalho, a planilha DIPJ ficaria visível somente se o mês corrente fosse Dezembro, certo? Nesse caso, eu sugiro que você adapte o código acima e coloque no evento Workbook_Open, isto é, o código abaixo executaria automaticamente ao abrir a pasta de trabalho:

    Private Sub Workbook_Open()
        Select Case Month(Date)
            Case 12
                Sheets("DIPJ").Visible = xlSheetVisible
            Case Else
                Sheets("DIPJ").Visible = xlSheetHidden
        End Select
    End Sub

    Note que usei a função Month da função Date para retornar o mês atual do sistema.


    Felipe Costa Gualberto - http://www.ambienteoffice.com.br

    • Marcado como Resposta Brandão Jr terça-feira, 9 de outubro de 2012 18:48
    domingo, 30 de setembro de 2012 17:59
    Moderador
  • Sub Exemplo()
        Sheets("DIPJ").Visible = xlSheetHidden
    End Sub


    Felipe Costa Gualberto - http://www.ambienteoffice.com.br

    • Marcado como Resposta Brandão Jr domingo, 30 de setembro de 2012 15:00
    sábado, 29 de setembro de 2012 20:51
    Moderador

Todas as Respostas

  • Sub Exemplo()
        Sheets("DIPJ").Visible = xlSheetHidden
    End Sub


    Felipe Costa Gualberto - http://www.ambienteoffice.com.br

    • Marcado como Resposta Brandão Jr domingo, 30 de setembro de 2012 15:00
    sábado, 29 de setembro de 2012 20:51
    Moderador
  • Felipe, valeu mesmo.

    Mas m dá mais uma mãozinha.O comando abaixo fará com que a guia fique oculta durante 11 meses (Janeiro a Novembro) e fará com q ela seja exibida somente no mês 12 (Dezembro). 

    Como faço para q esse comando funcione automaticamente? Segue abaixo o comando.

    Sub Ocultar_DIPJ()
    
    If Range("a1").Value = 1 Then
    Sheets("DIPJ").Visible = xlSheetHidden
    End If
    If Range("a1").Value = 2 Then
    Sheets("DIPJ").Visible = xlSheetHidden
    End If
    If Range("a1").Value = 3 Then
    Sheets("DIPJ").Visible = xlSheetHidden
    End If
    If Range("a1").Value = 4 Then
    Sheets("DIPJ").Visible = xlSheetHidden
    End If
    If Range("a1").Value = 5 Then
    Sheets("DIPJ").Visible = xlSheetHidden
    End If
    If Range("a1").Value = 6 Then
    Sheets("DIPJ").Visible = xlSheetHidden
    End If
    If Range("a1").Value = 7 Then
    Sheets("DIPJ").Visible = xlSheetHidden
    End If
    If Range("a1").Value = 8 Then
    Sheets("DIPJ").Visible = xlSheetHidden
    End If
    If Range("a1").Value = 9 Then
    Sheets("DIPJ").Visible = xlSheetHidden
    End If
    If Range("a1").Value = 10 Then
    Sheets("DIPJ").Visible = xlSheetHidden
    End If
    If Range("a1").Value = 11 Then
    Sheets("DIPJ").Visible = xlSheetHidden
    End If
    If Range("a1").Value = 12 Then
    Sheets("DIPJ").Visible = xlSheetVisible
    End If
    
    End Sub

    Valeu pela atenção Brother.

    Brandão Jr


    domingo, 30 de setembro de 2012 15:19
  • O código que você está usando pode ser simplificado por:

    Sub Ocultar_DIPJ()
        Select Case Range("A1")
            Case 12
                Sheets("DIPJ").Visible = xlSheetVisible
            Case Else
                Sheets("DIPJ").Visible = xlSheetHidden
        End Select
    End Sub

    No entanto, você falou que gostaria que isso acontecesse automaticamente. No meu entendimento, ao abrir a pasta de trabalho, a planilha DIPJ ficaria visível somente se o mês corrente fosse Dezembro, certo? Nesse caso, eu sugiro que você adapte o código acima e coloque no evento Workbook_Open, isto é, o código abaixo executaria automaticamente ao abrir a pasta de trabalho:

    Private Sub Workbook_Open()
        Select Case Month(Date)
            Case 12
                Sheets("DIPJ").Visible = xlSheetVisible
            Case Else
                Sheets("DIPJ").Visible = xlSheetHidden
        End Select
    End Sub

    Note que usei a função Month da função Date para retornar o mês atual do sistema.


    Felipe Costa Gualberto - http://www.ambienteoffice.com.br

    • Marcado como Resposta Brandão Jr terça-feira, 9 de outubro de 2012 18:48
    domingo, 30 de setembro de 2012 17:59
    Moderador
  • Felipe, perfeito

    Se encaixou certinho aqui na minha planilha.

    Muito obrigado Brother

    Cleberton Brandão

    terça-feira, 9 de outubro de 2012 18:48