Como Esconder dos Usuários as Macros na Interface do Excel

Neste artigo você aprenderá como esconder dos usuários as macros na interface do Excel passo-a-passo com imagens.

1. Introdução

Pastas de trabalho no Excel que normalmente contém macros as exibem na interface normal do usuário, conforme mostra a imagem seguinte.

Como Esconder dos Usuários as Macros na Interface do Excel 1

Esta relação de macros é facilmente localizada e visível através da guia Desenvolvedor, ou até mesmo através do atalho ALT + F8. Esta exposição irrestrita se torna inconveniente, especialmente quando usuários desavisados podem executar alguns procedimentos e rotinas que ocasionem danos aos trabalhos.

A boa notícia é que as macros disponíveis na pasta de trabalho podem ser facilmente omitidas dos usuários, conferindo assim mais segurança para o projeto. Para isso, o próprio Visual Basic dispõe de alternativa, que consiste basicamente em simples alterações dos códigos, com algumas instruções complementadas. Isto permite que as macros sejam devidamente escondidas dos usuários, o que pode ser muitas vezes conveniente para evitar danos acidentais ou usos indesejados.

As instruções para este fim estão descritas a seguir neste artigo.

P.S: aqui estamos tratando do contexto de exibição das macros na interface “normal” do Excel, e não no VBE. Para esconder no VBE, podemos e devemos realizar outras ações, como inserir uma senha ao projeto, por exemplo.

2. Como esconder as macros dos usuários?

Para este fim devemos acessar o VBE – Visual Basic Editor. Isto pode ser facilmente realizado através do atalho ALT + F11 ou através da guia Desenvolvedor > Visual Basic.

Podemos esconder macros de duas formas: omitir todas as macros de um módulo ou omitir individualmente cada macro.

2.1. Escondendo o módulo inteiro

Considere a seguir a imagem em que nota-se a existência de 3 módulos.

Veja a imagem seguinte o módulo Rotinas selecionado. Este módulo possui 3 macros em sua composição (Backup, GerarTxt e Imprimir).

Note que, na imagem seguinte, através da interface de usuário do Excel, estas 3 rotinas estão plenamente disponíveis para execução direta, o que pode ser uma permissão potencialmente indesejada.

Para omitir todo este módulo (que abrange estas 3 macros), tudo o que precisamos fazer inserir, bem no começo do módulo, uma linha com a instrução “Option Private Module”, antes da primeira rotina. A imagem a seguir ilustra esta alteração.

A imagem a seguir nos revela o êxito neste procedimento. As 3 rotinas do módulo (Backup, GerarTxt e Imprimir) não mais estão visíveis para os usuários, o que a priori já impede a sua direta execução.

P.S: para este módulo estarão escondidas tanto as rotinas já existentes quanto as novas rotinas eventualmente criadas.

2.2. Escondendo macros individualmente

Além de ocultar todo um módulo, podemos também ocultar individualmente e pontualmente macros, uma a uma. Isto pode ser útil quando não desejamos ocultar um ou mais módulos inteiros.

A alteração que precisamos fazer para ocultar uma macro é simples: basta escrever o termo “Private” antes do nome da macro. Ou seja: uma rotina nomeada como Sub PDF, por exemplo, deverá ser alterada para Private Sub PDF. Como consequência ela não ficará mais disponível na interface do Excel.

Veja a constatação dessa alteração: a rotina PDF se torna indisponível.

Download da Planilha de Como Esconder dos Usuários as Macros na Interface do Excel

Para realizar o download desta planilha de exemplo clique no botão abaixo.

Baixe a planilha

Avalie este post
Sair da versão mobile