VBA

Como fazer o usuário forçar a execução de uma macro no Excel

Por vezes criamos uma planilha que para ser executada precisa que a macro seja executada, mas por padrão o Windows as bloqueia. Aprenda como resolver esse problema com apenas 2 linhas de código.

Por Maximiliano Meyer em 05/08/2015 às 11:04 - atualizado: 11/08/2017 08:10

Já aprendemos aqui no site como criar diversas funções e rotinas para nossas planilhas através do VBA, porém, como nem tudo é perfeito, há sempre uma possível “falha” nas nossas criações.

Funciona assim: Como as VBAs podem conter códigos maliciosos, o Windows, por segurança, as mantém bloqueadas até que o usuário as habilite. Isso pode ser muito ruim, pois imagine a situação: Você faz uma planilha com a macro que proíbe a cópia de conteúdo, afinal, possui dados que você não quer que sejam distribuídos por aí, mas, o usuário não ativa as macros, e, com isso, pode copiar o que quiser. Não serviu de nada a VBA, certo?

Por isso vamos aprender hoje como “forçar” que ele ative as macros. Vamos lá:

Primeiramente vamos criar uma tela de aviso ao usuário. Fizemos a seguinte tela para o nosso exemplo, você pode reproduzi-la ou criar a sua própria.

Como fazer o usuário forçar a execução de uma macro no Excel

Legal, certo? É preciso dar todas as instruções aos usuários, não se esqueça que nem sempre eles têm o mesmo conhecimento do que eu ou você e sabe determinado comando. A próxima parte será criar a planilha em que você irá inserir as informações que quer aos usuários.

Para criar uma planilha é só clicar no símbolo de + na barra de tarefas.

Como fazer o usuário forçar a execução de uma macro no Excel

Com a Plan 2 criada, adicione os dados normalmente que você quer exibir, sejam eles números, fórmulas, imagens, gráficos, tabelas, etc. Para finalizar você terá que fazer um passo muito importante: Ocultar essa planilha de dados que acabou de criar. Para isso clique com o direito e clique em “Ocultar”.

Como fazer o usuário forçar a execução de uma macro no Excel

Bom, mas ainda não estamos totalmente seguros, certo? Afinal o usuário poderia fazer o caminho inverso e clicar em “re-exibir” e pronto, lá se ia nossa segurança. Para isso faremos o seguinte: Vá até a guia “Revisão” e clique em “Proteger Pasta de Trabalho”, deixe o campo “Estrutura” marcado e insira uma senha. No nosso caso eu colocarei “1234”.

Como fazer o usuário forçar a execução de uma macro no Excel

O próximo passo será adicionar o código VBA. Para isso vá na área de edição de códigos, através do Alt + f11, por exemplo, e dê um duplo clique em “EstaPasta_de_trabalho”. Na nova janela selecione “Workbook” na primeira caixa de texto e “Open” na segunda. Depois é só adicionar o código

Private Sub Workbook_Open()   
     
     ActiveWorkbook.Unprotect "1234"
     Sheets("Plan2").Visible = True
            
End Sub

Repare que se a sua senha for outra combinação que não o “1234” você terá de fazer a substituição no código VBA.

Como fazer o usuário forçar a execução de uma macro no Excel

O próximo passo é fechar a janela de edição e salvar o arquivo como.

Como fazer o usuário forçar a execução de uma macro no Excel

Interessante que esse código – assim como qualquer outro – pode ser utilizado em conjunto com demais macros. Você pode forçar o usuário a executar as macros e disparar a rotina que desejar e até onde sua criatividade conseguir te levar =D

Por fim é só você acessar esta aula e aprender como bloquear seus códigos VBA, afinal, até aqui não protegemos a edição das macros e qualquer um que apertar o atalho alt + f11 poderá fazer um estrago em nossa segurança. Dê uma olhadinha no post, são apenas 2 passos.

Uma última dica: Se a sua planilha de dados tiver um outro nome, como “dados” ou “relatório”, por exemplo, o código deverá ser Sheets("dados").Visible = True e assim por diante. Veja o resultado final:

Como fazer o usuário forçar a execução de uma macro no Excel

Até a próxima dica e abaixo o download, para você ver na prática como funciona esse sistema incrível que o Aprender Excel criou para você.

Como fazer o usuário forçar a execução de uma macro no Excel

Problemas com o download?

Veja nosso tutorial e saiba como resolver qualquer tipo de problema que você enfrentar para baixar, abrir ou executar nossas planilhas.

Como fazer o usuário forçar a execução de uma macro no Excel

relacionados

Participe
do nosso grupo

recentes

compartilhe este post

  • ASSINE NOSSA NEWSLETTER

    As melhores publicações no
    seu e-mail

  • Preencha para confirmar