Páginas

quinta-feira, 2 de dezembro de 2010

Abrindo conexão à uma base de dados


Em muitos casos no dia a dia, precisamos buscar informações que estão inseridas em base de dados, e exibi-las de uma forma mais atraente para o usuário.

Para isto normalmente precisaríamos utilizar dois objetos. Um para a conexão a base de dados e outro para a recuperação dos dados, normalmente com um recordset.

Com as funções a seguir não há mais a necessidade de criação dos dois objetos, somente o recordset é necessário. Veja como.

Crie a seguinte função num módulo qualquer.

IMPORTANTE

É necessário que seja feita a referência a biblioteca (Ferramentas/Referências no ambiente VBA) Microsoft Activex Data Object (aponte para a versão mais atual)

Function Abrecn(abre As Boolean) As ADODB.Connection

'Desenvolvida por Bruno Leite
'bruno_silva_leite@yahoo.com.br

If abre Then
    Set Abrecn = New ADODB.Connection
 ' Altere o Data Source para o caminho de sua base de dados, neste caso a base esta na mesma pasta da planilha ativa, na pasta system
    Abrecn.ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;User ID=Admin;Data Source=" & ThisWorkbook.Path & "\System\Dados.mdb"
    Abrecn.Open
Else
    Set Abrecn = Nothing
End If
End Function


DICA
Para descobrir a string de conexão necessária para a sua base de dados Access, existem duas formas práticas.
1 – Em seu arquivo Access vá ao editor VBA (ALT+F11) e na janela de inspeção de variáveis (CTRL+G) digite ?currentproject.connection.connectionstring e pressione enter


2 – Acesse www.connectionstrings.com

Esta rotina recebe como parametro uma variável booleana , portanto use true para abrir a conexão, e false para fechá-la

Agora a rotina para a recuperação de dados.


Sub BuscaDados()

'Desenvolvida por Bruno Leite
'bruno_silva_leite@yahoo.com.br

Dim rs As ADODB.Recordset

Set rs = Abrecn(True).Execute("Select * From dados")

Sheets(1).[A1].CopyFromRecordset rs

Abrecn (False)

End Sub


Com esta Sub BuscaDados, apenas criamos o objeto Recordset, e executamos rapidamente a busca dos dados.

Bom é isto ai

Até uma próxima, quando o tempo permitir..rs

0 comentários:

Postar um comentário

Related Posts Plugin for WordPress, Blogger...