Mesmo que o arquivo se mova, você pode usar um certificado digital para assinar seu projeto de macro usando um certificado de um CA .
Na verdade o finalidade da função no MS Office para assinar digitalmente projetos de macros é para que ele seja executado de qualquer local que tenha macros confiáveis ativadas e execute-o sem um aviso.
Sem assinar digitalmente, não há nenhuma maneira, você pode tê-lo executado em qualquer estação de trabalho sem qualquer aviso, uma vez que derrota toda a finalidade de segurança construída em torno de macros.
Aqui está como você pode assinar digitalmente o seu projeto de macro:
Abra o arquivo que contém o projeto de macro que você deseja assinar.
No Developer
guia, no Code
grupo, clique Visual Basic
.
No Visual Basic, no Tools
menu, clique Digital Signature
. A caixa de diálogo Assinatura digital é exibida.
Selecione um certificado e clique em OK.
Notas:
a) Se a guia Desenvolvedor não estiver disponível: Clique no File
aba. Clique Options
. Clique Customize Ribbon
. Na lista Personalizar a Faixa de Opções, clique em Developer
e, em seguida, clique em OK.
b) Se você não tiver selecionado um certificado digital ou quiser usar outro, clique em Choose
. Selecione um certificado e clique em OK.
c) É recomendável que você assine as macros somente depois que sua solução tiver sido testada e pronta para distribuição: quando o código em um projeto de macro assinado for alterado de alguma forma, sua assinatura digital será removida. No entanto, se você tiver o certificado digital válido que foi usado anteriormente para assinar o projeto em seu computador, o projeto de macro é automaticamente assinado novamente quando você salvá-lo.
d) Se você quiser impedir que os usuários de sua solução alterem acidentalmente o seu projeto de macro e invalidem sua assinatura, bloqueie o projeto de macro antes de assiná-lo. Sua assinatura digital implica que você garante que o projeto não foi adulterado desde que você o assinou. Sua assinatura digital não prova que você escreveu o projeto. Portanto, bloquear seu projeto de macro não impede que outro usuário substitua a assinatura digital por outra assinatura. Os administradores corporativos podem assinar novamente modelos e suplementos para poder controlar o que os usuários executam em seus computadores.
e) Se você criar um suplemento que adiciona código a um projeto de macro, seu código deve determinar se o projeto está assinado digitalmente e deve notificar os usuários sobre as consequências de alterar um projeto assinado antes que eles continuem.
Quando você assina digitalmente macros, é importante obter um registro de data e hora para que outros usuários possam verificar sua assinatura se o certificado usado para a assinatura expirou ou foi revogado após a assinatura. Se você assinar macros sem um registro de data e hora, a assinatura permanecerá válida durante o período de validade do seu certificado.
f) Observe que Assinatura digital do seu projeto de macro é diferente de locais confiáveis .
Referências: