Usuário com melhor resposta
If "Janeiro 2018" <> Sheets(1).Name Then "Oculta todas as planilhas"!!!!!

Pergunta
-
Boa Pessoal!!!
Tenho pesquisado muuuuito por uma solução em segurança de planilhas, e antes que eu conte minha história, vou logo fazer a pergunta para quem não tiver tanto cabelo na cabeça "como eu" para me escutar! kkkkkkkk
é o seguinte....
Quero fazer o que no Titulo quer dizer! ou seja.... Comparar SE Variável com o valor String = "Janeiro 2018", se é Diferente "<>" ao nome da ABA alocada no Sheets(1), Se for.... Oculta todas as planilhas... segue um exemplo do que já tentei abaixo!!!!!
Private Sub Worksheet_Activate()
Dim nj2018 As String
Dim nf2018 As String
nj2018 = "Janeiro 2018"
nf2018 = "Fevereiro 2018"If nj2018 <> Sheets(1).Name Then
Application.ScreenUpdating = False
Worksheets("Alerta").Visible = True
Worksheets("Janeiro 2018").Visible = xlVeryHidden
Worksheets("Fevereiro 2018").Visible = xlVeryHidden
Worksheets("Março 2018").Visible = xlVeryHidden
Worksheets("Abril 2018").Visible = xlVeryHidden
Worksheets("Maio 2018").Visible = xlVeryHidden
Worksheets("Junho 2018").Visible = xlVeryHidden
Worksheets("Julho 2018").Visible = xlVeryHidden
Worksheets("Agosto 2018").Visible = xlVeryHidden
Worksheets("Setembro 2018").Visible = xlVeryHidden
Worksheets("Outubro 2018").Visible = xlVeryHidden
Worksheets("Novembro 2018").Visible = xlVeryHidden
Worksheets("Dezembro 2018").Visible = xlVeryHidden
Worksheets("Valor Anual").Visible = xlVeryHidden
Worksheets("Reset").Visible = xlVeryHidden
Application.ScreenUpdating = True
End If
End SubMas não vai!!! e a minha trajetória é a seguinte.
Meu cliente possui o AD-RMS instalado e protegendo uma planilha de ser COPIADA, Bloqueando Print Screen e de "Salvar como".... Porém, o usuário com essas limitações de permissão, precisa copiar uma célula! Mas já desisti de procurar uma solução por parte do RMS.
Hoje, deixei liberado o usuário a copiar os conteúdos das planilhas e com permissão a execução de MACROS para tentar alguma alternativa aqui, e através do VBA, queria algumas dessas alternativas ou aquela que não consta aqui e que funcione.
Ou seja.
Via VBA uma delas
1). Desabilitar o ADRMS elevando com um usuário administrador, fazer a cópia, e proteger novamente a planilha, recolocando na proteção RMS.
2). Eu já possuo um código funcional! Onde na aba Janeiro, desabilite a cópia, tanto pelo teclado quanto pelo mouse, também se tentar copiar as abas desprotegidas numa nova planilha vai dar errado! Não copia! Também, se abrir a planilha e a macro não estiver habilitada, todas as abas são ocultadas, enfim! Essas são algumas medidas de segurança que pude colocar dando tantas voltas para que o usuário limitado possa copiar uma célula numa aba permitida! E se nessa condição do "Título do poste" for possível, daí, eu evitaria que o usuário tenta-se fazer alguma malandragem para poder quebrar a macro, por exemplo, mudando a aba de posição Sheets(1) para sheets(2), onde estaria programado as permissões de cópia e poder assim quebrar a aplicação dessas permissões...etc!
É isso! Alguém tem alguma ideia!??
- Editado Edibuck terça-feira, 12 de dezembro de 2017 20:37
Respostas
Todas as Respostas
-
-
E ae Diogenes, vlw cara, resolveu! Obrigado mesmo! Eu só fico indignado como agente tem que dar voltas pra conseguir proteger uma planilha... meu... tenho que pensar em todas as possibilidades só pra que o cara não copie outras abas... meu... é osso! vlw!
-
Diogenes, Boa tarde!
Deixa eu te perguntar uma coisa... ao invés de eu usar o nome das ABAS onde o usuário pode alterar o nome e quebrar o código do VBA, tem como agente usar no código o nome (Name) ao invés do "Janeiro 2018" onde qualquer um pode alterar?
-
-