Reexibir todas as planilhas e Ocultar as planilhas novamente – Excel VBA

Reexibir todas as planilhas e Ocultar as planilhas novamente – Excel VBA

Você verá como reexibir todas as planilhas e ocultar as planilhas novamente usando Excel VBA.

As planilhas são ocultas no Excel muito pela necessidade de restringir o acesso e facilitar o uso de uma pasta de trabalho Excel.

Esta função é muito útil e permite uma melhor organização e maior segurança para a própria pasta de trabalho, evitando alterações incorretas em fórmulas ou bases de dados.

Porém, sempre é necessário dar manutenção nestas planilhas ocultas, e elas podem ser muitas.

Por isso criamos um código VBA que permite exibir todas as planilhas da sua pasta de trabalho automaticamente.

E principalmente uma opção para voltar exatamente como estava antes, com as devidas planilhas ocultar de novo.

Ocultar e Reexibir planilhas automaticamente

Os procedimentos VBA que estou disponibilizando hoje podem ser muito úteis para quem tem o costume, assim como eu, de ocultar planilhas que não são utilizadas com tanta frequência.

Ás vezes precisamos rever estas planilhas, muitas vezes não lembramos mais qual é, ou precisamos mesmo reexibir todas as planilhas que estão ocultas.

Para fazer com que o Excel reexiba todas as planilhas de um arquivo Excel eu criei o procedimento VBA Excel lsTodasVisiveis aonde todas as planilhas que estão ocultas ficam visíveis.

Em contrapartida também criei o procedimento VBA Excel lsRetornarOcultas que faz com que as planilhas que antes estavam ocultas fiquem ocultas novamente.

Como aplicar o código

Os procedimentos abaixo devem ser colocados no arquivo PERSONAL, importante que seja no início do arquivo por causa das variáveis globais que existem. conforme explicado no artigo Habilitar a Guia Desenvolvedor no Excel.

Você também pode criar atalhos dos procedimentos VBA para que possam ser acessados rapidamente de qualquer lugar conforme demonstrado no artigo Criar botões de atalho para macros VBA Excel.

Caso ainda precise, pode assistir também no vídeo deste artigo aonde mostro passo-a-passo como instalar o código e como aplicar.

Abaixo o código VBA Excel dos procedimentos para que possam ser copiados e executados.

'Declara as variáveis globais
Global lPlanilhas()    As String
Global lArquivo        As String

'Faz com que todas as planilhas fiquem visíveis
Public Sub lsTodasVisiveis()

Dim lWorksheet      As Worksheet
Dim lWorkbook       As Workbooks
Dim lCont           As Integer
Dim lActiveSheet    As Worksheet

    Set lworkbooks = ActiveWorkbook
    lCont = 0

    lArquivo = lworkbooks.Name
    Set lActiveSheet = ActiveSheet

    'Identifica as planilhas que não estão visíveis e as reexibe
    For Each lworksheets In lworkbooks.Worksheets

        If lworksheets.Visible <> xlSheetVisible Then
            'Redimensiona e mantém as informasões anteriores
            ReDim Preserve lPlanilhas(lCont)

            'Passa os dados para a variável lPlanilhas e a deixa visível
            lPlanilhas(lCont) = lworksheets.Name
            lworksheets.Visible = xlSheetVisible
            lCont = lCont + 1
        End If

    Next lworksheets

    lActiveSheet.Select

End Sub

'Oculta novamente as planilhas
Public Sub lsRetornarOcultas()
On Error Resume Next

Dim lControle   As Integer
Dim lTotal      As Integer

'Determina o total de planilhas
lTotal = UBound(lPlanilhas)

'Para cada planilha que estava oculta e ficou visível o sistema oculta ela novamente
For lControle = 0 To lTotal
    Workbooks(lArquivo).Worksheets(lPlanilhas(lControle)).Visible = xlSheetHidden
Next lControle

End Sub

Download Planilha Exeplo

Quer ver como funciona? Faça o Download abaixo com uma planilha com o código fonte aberto e pronta para teste.

Baixe a planilha

Abraço
Marcos Rieper