Apenas uma alteração, a chamada a função Username tem que estar entre duas aspas "".
Private Sub Workbook_Open()
'Se o usuario for diferente do especificado, então ele fecha
If Environ("username") <> "MARCELO" Then
ActiveWorkbook.Save
ActiveWorkbook.Close
End If
End Sub
E esse caso lhe interesse, só salva o arquivo mediante a entrada de uma senha, no caso voce poderá dstribuir uma versão limitada, para que possam usar a planilha sem a opção de salvar.
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Dim Senha As String
Senha = "123"
'Esse código bloqueia a opção de "Salvar como" do arquivo
If SaveAsUI = True Then
MsgBox "A este Arquivo não é permitido a opção de 'Salvar como'", vbExclamation, "Arquivo Protegido - Aviso"
Cancel = True
Exit Sub
End If
If InputBox("Digite a senha para Salvar, ou em branco apenas fecha.", "Proteção") = Senha Then
Exit Sub
Else
If SaveAsUI = False Then
MsgBox "Não é permitido ‘Salvar‘"
Cancel = True
Exit Sub
End If
End If
End Sub
Mas como já comentado largamente aqui no fórum, proteger um arquivo para distribuição, não importa muito o nível de segurança aplicado, sempre existirá uma forma de desbloquea-la. Já pesquisei a fundo o assunto outras vezes, e até agora só encontrei maneiras de dificultar, mas nada muito eficaz, basta uma pesquisa na web e voce conseguirá uma forma de contornar as seguranças, um belo exemplo, dois arquivos, um eu adaptei e o outro eu encontrei em um site.
Um deles desbloqueia a sheet, caso voce tenha uma aba com senha,
, ele desbloqueia sem nenhum problema (eu utilizo muito quando preciso de uma planilha antiga a qual só Deus sabe qual a senha rs).
E a outra eu utilizo para testar o nivel de segurança de alguns projetos particulares, pois assim como você eu pretendia distribuir a planilha, mais queria apenas resguardar os códigos, mas até agora nenhuma planilha minha com senha em projeto VBA sobreviveu após o uso desse arquivo, projeto VBA desbloqueado em instantes :/
Se encontrar alguma forma aficaz, estamos ae curiosos para saber como ^^
"A mente que se abre a uma nova ideia jamais voltará ao seu tamanho original."
Albert Einstein
Postado : 06/02/2016 5:18 am