Assim como você pode proteger com senha as pastas de trabalho e planilhas, você pode senha protege uma macro em Excel de ser visto (e executado).
Coloque um botão de comando em sua planilha e adicione as seguintes linhas de código:
1. Primeiro, crie uma macro simples que você deseja proteger.
Intervalo ("A1"). Valor = "Este é o código secreto"
2. Em seguida, clique em Ferramentas, Propriedades de VBAProject.
3. Na guia Proteção, marque "Bloquear projeto para visualização" e digite uma senha duas vezes.
4. Clique em OK.
5. Salve, feche e reabra o arquivo Excel. Tente visualizar o código.
A seguinte caixa de diálogo aparecerá:
Você ainda pode executar o código clicando no botão de comando, mas não pode mais visualizar ou editar o código (a menos que você saiba a senha). A senha para o arquivo Excel para download é "fácil".
6. Se você deseja proteger com senha a macro de ser executada, adicione as seguintes linhas de código:
Dim senha como variante
password = Application.InputBox ("Digite a senha", "Protegido por senha")
Selecione a senha do caso
Case Is = False
'fazer nada
Case Is = "fácil"
Intervalo ("A1"). Valor = "Este é o código secreto"
Case Else
MsgBox "Senha Incorreta"
End Select
Resultado quando você clica no botão de comando na planilha:
Explicação: A macro usa o método InputBox do objeto Aplicativo. Se o usuário clicar em Cancelar, o método retorna False e nada acontece (o InputBox desaparece). Somente quando o usuário souber a senha ("fácil" novamente), o código secreto será executado. Se a senha inserida estiver incorreta, um MsgBox será exibido. Observe que o usuário não pode examinar a senha no Editor do Visual Basic porque o projeto está protegido contra visualização.