Hoje vamos aprender como integrar o aplicativo Excel com o aplicativo Access que é um banco de dados externo da própria Microsoft.

Saber criar uma conexão entre o banco de dados Access e Excel é uma habilidade extremamente valiosa para aqueles que desejam criar aplicativos mais robustos e eficientes no Excel VBA. Com esta habilidade, você pode automatizar tarefas, melhorar a integridade dos dados e obter informações mais precisas em menos tempo.

Sabemos também que o excel consegue armazenar 1 milhão de linhas, mas com todas essas linhas o aplicativo se tornaria muito lento, por isso a ideia de utilizarmos um banco de dados externo é muito mais eficiente além de ter uma maior segurança no armazenamento desses dados.

Para criarmos a conexão utilizamos o ADO (Activex Data Objects) que é um mecanismo com interface de alto nível e desempenho e pode ser aplicada em vários armazenamentos de dados.

Para podermos trabalhar com o modelo ADO e comandos SQL dentro do Excel usando VBA é necessário ativar a referência Microsoft Activex Data Object Recordset 6.0 Library.

E através de uma string de conexão criamos a conexão com o banco de dados Access.

O Microsoft Access é um sistema de gerenciamento de banco de dados da Microsoft poderoso e fácil de aprender. O Access segue a maioria, mas não toda, a terminologia tradicional de banco de dados.

Caso prefira ver esse conteúdo em formato vídeo-aula assista o vídeo abaixo:

CRIANDO UM BANCO DE DADOS NO ACCESS

Primeiramente vamos abrir o aplicativo Microsoft Access e criar um novo banco de dados caso ainda não tenha sido criado.

1º passo – Abrir o aplicativo Microsoft Access e clicar em “Banco de dados em branco” e renomear o nome do banco de dados e escolher a pasta onde vai ficar armazenado e clicar em “Criar”

2º Passo – Renomear o nome da tabela clicando em “Modo de Edição”

3º Passo – Criar as colunas do seu banco e estipular o tipo de dado que será armazenado.

4º Passo – Salvar alterações realizadas na tabela, clicando no “Modo de Exibição”

CRIANDO UM MÓDULO NO EXCEL VBA PARA CONEXÃO DOS DOIS APLICATIVOS

1º Passo – Abrir o aplicativo Microsoft Excel
2º Passo – Salvar o arquivo no formato (.xlsm) e na mesma pasta que o banco de dados
3º Passo – Pressione as teclas ALT + F11 ou ALT + FN + F11
4º Passo – Inserir um Módulo

5º Passo – Vamos ativar a referência Microsoft Activex Data Object Recordset 6.0 Library

6º Passo - Inserir no módulo criado o código abaixo:

Option Explicit

Sub ConectarBanco()

Dim Conexao           As New ADODB.Connection
Dim BancoDados        As String
Dim Wb                As Workbook
Dim ConnectionString  As String

Set Wb = wbApp

'wbApp.Path= Caminho da pasta onde o arquivo excel e o banco de dados está salvo
BancoDados = wbApp.Path & "\db.accdb"

ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;" & _
                 "Data Source=" & BancoDados & ";" & _
                 "Jet OLEDB:Database Password=MyDbPassword;"
                 
If Conexao.State = 0 Then Conexao.Open ConnectionString

Conexao.Close

Set Wb = Nothing

End Sub

Explicação do código:

  • Vamos utilizar de uma Sub para chamar a conexão com o banco de dados;
  • Dimensionamento das variáveis:
  • A variável “BancoDados” vai receber o resultado da combinação do comando Path (que vai retornar o caminho da pasta da planilha que contém o código) e do nome do arquivo do banco de dados (extensão .accdb – Access database). Portanto, ela armazenará o caminho completo do banco de dados
  • A variável “ConnectionString” vai receber a junção dos textos:
    • “Provider=Microsoft.ACE.OLEDB.12.0;” Data Source=”
    • O texto resultante da variável “BancoDados”
    • “;Jet OLEDB;Database Password=MyDbPassword;”
  • No final da sub vai ser invocada de fato a conexão entre o Excel VBA e Access conforme os parâmetros que estabelecemos.

DOWNLOAD CONEXÃO COM BANCO DE DADOS ACCESS

Até o próximo SelfBlog!
Fique ligado no nosso canal do Youtube para mais conteúdo de Excel VBA!

1 comentário em “Como criar conexão entre Excel VBA e Access”

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Carrinho de compras