Arquivo da tag: Projeto

VBA e .NET – Diferenças entre Projetos

Curtiu o primeiro vídeo da série? Ótimo! Vamos entender agora como um projeto VBA funciona e compará-lo a um projeto criado em no Visual Studio.

Arquivos utilizados no vídeo ► http://www.tomasvasquez.com.br/forum/download/file.php?id=4266

Download do Visual Studio Community ► https://www.visualstudio.com/vs/older-downloads/

Como preparar seu projeto VBA para o controle de versão de código fonte ► https://www.youtube.com/watch?v=09fTq17kLfY

Acesse também

BLOG ► https://www.tomasvasquez.com.br/blog/
FÓRUM ► http://www.tomasvasquez.com.br/forum/
CURSO ONLINE DE C# ► http://www.tomasvasquez.com.br/cursocsharp

Aqui também!

FACEBOOK ► https://www.facebook.com/tomasvaquezsites
TWITTER ► https://twitter.com/tomamais
GOOGLE+ ► https://plus.google.com/+TomasvasquezBr/

Roteiro, apresentação, edição, etc, etc ► eu mesmo 🙂

VBA – Verificando se o projeto (VBAProject) está protegido

Mais uma que pode ajudar a proteger seus projetos em VBA. Com essa verificação, é possível fazer com que a proteção do projeto seja requisito para seu funcionamento.

Bom, vamos ao código:

'É necessário adicionar referência ao
'Microsoft Visual Basic for Applications Extensibilty Library
Function VBAProjectIsProtected() As Boolean
    Dim oVBP As VBIDE.VBProject
    Dim IsProtected As Boolean
 
    'Verifica se o projeto está bloqueado
    IsProtected = (Application.VBE.ActiveVBProject.Protection = vbext_pp_locked)
 
    VBAProjectIsProtected = IsProtected
End Function

Como é uma Function, é possível testar seu funcionamento em uma célula do Excel, bastando digitar: =VBAProjectIsProtected(). O resultado é o valor VERDADEIRO caso o projeto esteja protegido, FALSO do contrário.

O mais bacana é que o resultado só é verdadeiro se o projeto estiver além de protegido por senha, fechado para visualização. Se o projeto for aberto para visualização, indo ao VBA e informando a senha de acesso, a função passa a retornar FALSO. Com isso, tem-se a total garantia de que o projeto esteja mesmo na condição de protegido, podendo a partir daí, tomar qualquer providência, desde mostrar uma mensagem, fechar o aplicativo ou até mesmo excluir um módulo do VBA.

Referências:

http://www.mrexcel.com/forum/showthread.php?t=18539

Bom proveito!