Este tutorial irá ensiná-lo a ocultar e reexibir planilhas com o VBA.
Ocultar folha em VBA
Para ocultar uma planilha no VBA, use a propriedade Visible da planilha.
Defina a propriedade Visible como FALSE:
1 | Planilhas ("Planilha1"). Visible = False |
ou defina a propriedade Visible como xlSheetHidden:
1 | Planilhas ("Planilha1"). Visible = xlSheetHidden |
É o mesmo que se o usuário clicasse com o botão direito na guia da planilha e selecionasse “ocultar”.
Exibir folha
Para reexibir uma planilha no VBA, use a propriedade Visible da planilha:
1 | Planilhas ("Folha1"). Visível = Verdadeiro |
ou
1 | Planilhas ("Planilha1"). Visível = xlSheetVisible |
As planilhas ocultas podem ser vistas clicando com o botão direito na área da guia Planilha:
Folhas muito escondidas
A propriedade Sheet Visible tem uma terceira opção: xlSheetVeryHidden:
1 | Planilhas ("Planilha1"). Visível = xlSheetVeryHidden |
Folhas muito ocultas ficam ocultas ao clicar com o botão direito do mouse na área da guia Planilha:
Este código impedirá que o usuário da planilha veja a guia Planilha na parte inferior da tela. Ele também oculta a planilha do usuário quando ele clica com o botão direito nas guias na parte inferior. A única maneira de ver se a Planilha existe (ou exibi-la) é abrindo o Editor do Visual Basic.
Reexibir folhas muito ocultas
Planilhas muito ocultas tornam-se visíveis da mesma forma que planilhas ocultas normais:
1 | Planilhas ("Folha1"). Visível = Verdadeiro |
ou
1 | Planilhas ("Planilha1"). Visível = xlSheetVisible |
Ocultar / Reexibir planilhas no Editor VBA
Você também pode alternar a propriedade Visível da Planilha no Editor de VBA:
Ocultar todas as guias da planilha
Você também pode querer ocultar a área da guia da planilha para evitar que o usuário navegue para planilhas diferentes. Saiba mais sobre como ocultar as guias da planilha.
Ocultar / Reexibir planilhas na pasta de trabalho protegida
Sua pasta de trabalho deve ser desprotegida antes que você possa ocultar ou reexibir planilhas. Para desproteger a estrutura da pasta de trabalho, use o seguinte código:
1 | ActiveWorkbook.Unprotect |
Se a estrutura da pasta de trabalho for protegida por senha, você deve fazer o seguinte:
1 | ThisWorkbook.Unprotect "password" |
Reexibir todas as planilhas
Este procedimento irá exibir todas as planilhas em uma pasta de trabalho, usando um For Each Loop:
12345678 | Sub Unhide_All_Sheets ()Dim ws como planilhaActiveWorkbook.UnprotectPara cada ws nas planilhasws.Visible = xlSheetVisiblePróximoEnd Sub |
Observe que primeiro desprotegemos a pasta de trabalho, caso ela esteja protegida por senha.