O acesso programático ao projeto VBA do Office é negado

Aplica-se a
Office Products Excel 2010

Sintomas

O código escrito para automatizar um aplicativo do Office e manipular programaticamente o ambiente e o modelo de objeto do Microsoft Visual Basic for Applications (VBA) pode falhar no Office com uma das seguintes mensagens de erro:

 Do Visual Basic ou VBA:

Observação

Erro de tempo de execução '6068': o acesso programático ao projeto do Visual Basic não é confiável

Do Microsoft Visual C++, Microsoft Foundation Classes (MFC) ou Biblioteca de Modelos ActiveX (ATL):

Observação

HRESULT = 0x800A17B4 (-2146822220) "O acesso programático ao projeto do Visual Basic não é confiável"

O mesmo código funciona sem erros em computadores com Office 97 e Office 2000.

Causa

O Office adiciona uma opção de segurança para bloquear deliberadamente o acesso programático ao modelo de objeto VBA de qualquer cliente de automação, a menos que um usuário opte por permitir esse acesso. Essa é uma configuração por usuário e por aplicativo e nega o acesso por padrão.

 Essa opção de segurança torna mais difícil para programas não autorizados criar código "auto-replicante" que pode danificar os sistemas do usuário final.

Resolução

Para que qualquer cliente de Automação possa acessar o modelo de objeto VBA programaticamente, o usuário que executa o código deve conceder acesso explicitamente. Para ativar o acesso, o usuário deve seguir estas etapas.

Office 2003 e Office XP

  1. Abra o aplicativo Office 2003 ou Office XP em questão. No menu Ferramentas, clique em Macro e clique em Segurança para abrir a caixa de diálogo Segurança de Macro.
  2. Na guia Fontes Confiáveis, clique para marcar a caixa de marca Confiar no acesso ao Projeto do Visual Basic para ativar o acesso.
  3. Clique em OK para aplicar a configuração. Talvez seja necessário reiniciar o aplicativo para que o código seja executado corretamente se você automatizar a partir de um suplemento ou modelo COM (Component Object Model).

Office 2007

  1. Abra o aplicativo do sistema Microsoft Office 2007 em questão. Clique no botão Microsoft Office e clique em
    Opções de aplicativo.
  2. Clique na guia Central de Confiabilidade e em
    Configurações da Central de Confiabilidade.
  3. Clique na guia Configurações de Macro, marque a caixa de marcar Confiar no acesso ao modelo de objeto do projeto VBA e clique em OK.
  4. Clique em OK.