Usei um código simples para ocultar algumas planilhas do meu workbook e fiz isso definindo um Array, cujo os elementos são as planilhas que desejo ocultar:
Dim A As Variant
A = Array("Plan1", "Plan2")
Worksheets(A).Visible = False
Coloquei essas linhas de código no evento Initialize do meu UserForm1. Na primeira vez funcionou sem problemas e as planilhas ficaram ocultas.
Para não gerar um conflito toda vez que o meu aplicativo for iniciado, coloquei a seguinte linha no evento Terminate do meu UserForm1:
Dim A As Variant
A = Array("Plan1", "Plan2")
Worksheets(A).Visible = true
Para a minha surpresa acusou o seguinte erro:
"Não é possível definir a propriedade Visible da Classe Sheets."
Eu quero iniciar meu UserForm1 com algumas planilhas ocultas, mas como fazer isso sem gerar esse conflito toda vez que ele iniciar?
Detalhe: Para testar os códigos criei um botão e no evento Click coloquei o seguinte código:
Worksheets("Plan1").Visible = true
Worksheets("Plan2").Visible = true
Quando dou um click no botão as planilhas voltam a ficar visíveis, mas o mesmo código no evento Terminate do UserForm1 não funciona e acusa aquela mensagem.
Outro detalhe: Quando uso o Array para ocultar as planilhas a coisa funciona bem, mas para torná-las visíveis de novo o Array não funciona. Por quê?
Worksheets(Array("Plan1", "Plan2")).Visible = false 'funciona
Worksheets(Array("Plan1", "Plan2")).Visible = True 'não funciona
Por que isso acontece?
Alguém pode me ajudar?
Luiz Roberto
Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel
Postado : 28/05/2011 6:55 am