Adicionar Referências VBA Excel Automaticamente

MR
Marcos Rieper

Especialista em Excel

18 de junho de 2021 Atualizado 08 de julho de 2026 4 min de leitura
Adicionar-referências-automaticamente-VBA-Excel

Veja neste artigo como marcar referências VBA no Excel automaticamente.

Neste artigo você terá uma planilha de exemplo e o código VBA para marcar e desmarcar referências no Excel automaticamente.

Veja passo-a-passo como fazer este processo

Adicionar Referência VBE

O primeiro passo a ser realizado é Confirmar o acesso a programação do VBE, permitir que seja alterado o VBE via programação VBA.

Porque senão irá ser exibida a mensagem Erro em tempo de execução '1004': e mensagem O acesso de programação ao projeto do Visual Basic não é confiável.

Para evitar este problema clique em Arquivo->Opções->Central de Confiabilidade->Configurações da Central de Confiabilidade...

Marque a opção Confiar no acesso ao modelo de objeto de projeto do VBA.

Com este item marcado conseguirá utilizar o código para realizar o registro das DLLs do Excel no VBA.

Marcar Configuração de Macro do Desenvolvedor

O primeiro passo para usar este código é adicionar a biblioteca Microsoft Visual Basic for Applications Extensibility 5.3 que é a biblioteca de referência do VBA para manipular o próprio VBA.

Então clique no VBA em Ferramentas->Referências e marque a opção Microsoft Visual Basic for Applications Extensibility 5.3 para que possa funcionar o código seguinte.

Listar Todas as Referências do VBA Excel

Para listar todas as referências no Excel realizamos um loop passando por todas as referências.

No caso basta inserir um módulo no Excel e colar o código abaixo.

Pressione as teclas ALT+F11 e clique em Inserir->Módulo e coloque o código abaixo.

<pre lang="vb">
Sub lsMarcarReferencias()
    
    Dim vbProj As VBIDE.VBProject
    Dim vbRefs As VBIDE.References
    Dim vbRef  As VBIDE.Reference
    
    Set vbProj = ThisWorkbook.VBProject
    Set vbRefs = vbProj.References
    
    For Each vbRef In vbRefs
        Debug.Print "Name: " & vbRef.Name
        Debug.Print "Description: " & vbRef.Description
        Debug.Print "GUID: " & vbRef.GUID
        Debug.Print "Major: " & vbRef.Major
        Debug.Print "Minor: " & vbRef.Minor
        Debug.Print "FullPath: " & vbRef.FullPath
        Debug.Print "BuiltIn: " & vbRef.BuiltIn
        Debug.Print "Type: " & vbRef.Type
    Next
End Sub
</pre>

No procedimento lsMarcarReferencias você tem uma lista de todas as referências do VBA, o sitema irá listar as informações das referências que estiverem marcadas no Excel

  • Name
  • Description
  • GUID
  • Major
  • Minor
  • FullPath
  • BuiltIn
  • Type

Ao executar o sistema irá listar os dados das DLLs das referências marcadas no seu VBE, conforme abaixo:

Name: VBA
Description: Visual Basic For Applications
GUID: {000204EF-0000-0000-C000-000000000046}
Major: 4
Minor: 2
FullPath: C:\Program Files\Common Files\Microsoft Shared\VBA\VBA7.1\VBE7.DLL
BuiltIn: Verdadeiro
Type: 0

Assim você tem todas as informações das referências do VBA Excel.

Marcar Referências no VBA Excel

Para marcar as referências no VBE temos o código VBA Excel abaixo que ao ser acionado adiciona as referências do VBA no Excel.

No Excel pressione ALT+F11 e clique em Inserir->Módulo e coloque o código abaixo que realiza a marcação das referências.

Abaixo temos dois tipos de marcação de referência lsMarcarReferenciaFileName e lsMarcarReferenciaGUID as duas fazem marcação de referências à partir de uma chamada.

<pre lang="vb">
Private Sub lsMarcarReferenciaFileName(ByVal lFileName As String)
    Dim vbProj As VBIDE.VBProject
    Dim vbRefs As VBIDE.References
    
    Set vbProj = ThisWorkbook.VBProject
    Set vbRefs = vbProj.References

    vbRefs.AddFromFile Filename:="C:\Program Files\Microsoft Office\root\Office16\Library\SOLVER\SOLVER.XLAM"
End Sub

Private Sub lsMarcarReferenciaGUID(ByVal lGUID As String)
    Dim vbRefs As VBIDE.References
    Set vbRefs = vbProj.References

    vbRefs.AddFromFile GUID:=lGUID
End Sub

Private Sub lsMarcarReferenciaFileName(ByVal lFileName As String)
    Dim vbProj As VBIDE.VBProject
    Dim vbRefs As VBIDE.References
    
    Set vbProj = ThisWorkbook.VBProject
    Set vbRefs = vbProj.References

    vbRefs.AddFromFile Filename:=lFileName
End Sub

Sub lsMarcar()
    lsMarcarReferenciaFileName "C:\Program Files\Microsoft Office\root\Office16\Library\SOLVER\SOLVER.XLAM"
End Sub

Sub lsMarcarGUID()
    'Microsoft ActiveX Data Objects Recordset 6.0 Library
    lsMarcarReferenciaGUID "{00000300-0000-0010-8000-00AA006D2EA4}"
End Sub

Sub lsDesmarcar()
    lsExcluirReferencias "Solver"
End Sub
</pre>

Os procedimentos inclusos foram:

  • lsMarcarReferenciasGUID: Marca as referências pelo GUID. Basta passar então o GUID da referência, que você pode pegar pelo lsMarcarReferencias que passamos antes. Um exemplo de GUID: {00000300-0000-0010-8000-00AA006D2EA4}
  • lsMarcarReferenciaFileName: Neste campo passamos o FileName como por exemplo: C:\Program Files\Microsoft Office\root\Office16\Library\SOLVER\SOLVER.XLAM.
  • lsDesmarcar: Para remover uma referência passe apenas o nome da referência, por exemplo "Solver"

Download Exemplo Marcar Referências no VBA Excel

Realize o download da planilha de exemplo de marcar referências no VBE com o código pronto no Excel neste botão abaixo. Basta se inscrever na nossa newsletter gratuita para o download automático.

Download — baixe aqui: Adicionar Referências VBA Excel

Preencha seus dados para receber o link de download no seu e-mail.

Curso Excel Completo – Do Básico ao VBA

Quer aprender Excel do Básico, passando pela Avançado e chegando no VBA? Clique na imagem abaixo:

Principais recursos

Confira o que este material oferece para você.

Organização por data e etapas
Classificação automática
Ranking e destaques
Fluxos e etapas automáticas
Dashboard com indicadores
Atualização automática por fórmulas

Perguntas frequentes

O material é realmente gratuito?

Sim. O acesso é gratuito e não exige cadastro.

Preciso ter o Excel instalado?

Recomendamos o Excel 2013 ou superior para todos os recursos.

Como faço para receber atualizações?

As atualizações são automáticas dentro da própria planilha.

Funciona no Excel do Mac?

Sim, funciona no Excel para Windows e para Mac.

Funciona no celular?

É possível visualizar no app do Excel; a edição completa é no computador.

Planilhas relacionadas

Planilha de Fluxo de Caixa

Planilha de Fluxo de Caixa

(1.327)

R$ 89,90

Controle de Estoque

Controle de Estoque

(962)

R$ 69,90

Planilha Financeira Empresarial

Planilha Financeira Empresarial

(1.254)

R$ 79,90

Dashboard Financeiro no Excel

Dashboard Financeiro no Excel

(689)

R$ 49,90

Continue lendo

Curso Excel Master — Básico ao Avançado, VBA, PowerPoint e mais

Receba conteúdos e novidades direto no seu e-mail

Dicas, tutoriais, planilhas gratuitas e muito mais.

Não enviamos spam. Cancele quando quiser.

Download imediato

Acesso na hora após a compra

Compra 100% segura

Seus dados protegidos com SSL

Acesso vitalício

Use para sempre, sem mensalidades

Suporte via WhatsApp

Atendimento rápido e humanizado