Usuário com melhor resposta
senha na planilha - via VBA para desbloquear e bloquear novamente.

Pergunta
-
Tenho uma planilha com várias folhas, sendo que gostaria de um código para que via VBA ela desbloqueasse uma folha com senha e novamente a bloqueasse com a mesma senha.
Sem a senha o código é:
ActiveSheet.unprotect
' Diversos comandos em seu interior
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
nó meio das linhas tenho várias instruções, mas se a pessoa for na aba, clicar o lado direito do mouse ele consegue desbloquear a alterar a planilha. Quero colocar nesse código a senha em que pelo VBA desbloqueia com senha, execute o código e novamente proteja com a senha.
Grato a quem puder ajudar.
Respostas
-
Boa noite
troque seu trecho de código por estes:
Proteger:
ActiveSheet.Protect "sua senha aqui"
Desproteger:
ActiveSheet.Unprotect "sua senha aqui"
- Sugerido como Resposta Hezequias VasconcelosModerator segunda-feira, 3 de dezembro de 2012 13:40
- Marcado como Resposta Hezequias VasconcelosModerator terça-feira, 4 de dezembro de 2012 11:00
-
Olá, tenta fazer o procedimento em uma nova planilha, so para testar mesmo!
Na aba Exibição selecione Macros, inicie a gravação desta macro... Vá até a aba Revisão e faça a proteção conforme sua quiser, coloque a senha 123. Pare com a macro, e inicie outra gravação, agora faça o contrário e vá desproteger a planilha, pare a macro.
Abrindo o VBA você vai encontrar o código sem a senha, mas ela está gravada em outro lugar e não visível. Assim você define a senha sem o input e é só chamar a rotina.
- Sugerido como Resposta Hezequias VasconcelosModerator segunda-feira, 3 de dezembro de 2012 13:40
- Marcado como Resposta Hezequias VasconcelosModerator terça-feira, 4 de dezembro de 2012 11:00
Todas as Respostas
-
Boa noite
troque seu trecho de código por estes:
Proteger:
ActiveSheet.Protect "sua senha aqui"
Desproteger:
ActiveSheet.Unprotect "sua senha aqui"
- Sugerido como Resposta Hezequias VasconcelosModerator segunda-feira, 3 de dezembro de 2012 13:40
- Marcado como Resposta Hezequias VasconcelosModerator terça-feira, 4 de dezembro de 2012 11:00
-
Olá, tenta fazer o procedimento em uma nova planilha, so para testar mesmo!
Na aba Exibição selecione Macros, inicie a gravação desta macro... Vá até a aba Revisão e faça a proteção conforme sua quiser, coloque a senha 123. Pare com a macro, e inicie outra gravação, agora faça o contrário e vá desproteger a planilha, pare a macro.
Abrindo o VBA você vai encontrar o código sem a senha, mas ela está gravada em outro lugar e não visível. Assim você define a senha sem o input e é só chamar a rotina.
- Sugerido como Resposta Hezequias VasconcelosModerator segunda-feira, 3 de dezembro de 2012 13:40
- Marcado como Resposta Hezequias VasconcelosModerator terça-feira, 4 de dezembro de 2012 11:00
-
-
A melhor opção é essa, pois te proporciona escolher o que você quer deixar liberado, como por exemplo, o filtro:
ActiveSheet.Unprotect "sua senha aqui"
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True, Password:="sua senha aqui"