web 2.0


Curso Excel 2003 sobre ADO e ADOX (ActiveX Data Objects) - Parte 2

Neste tópico veremos alguns dos objetos importantes do ADO tais como “Connection” e “Recordset” assim como propriedades e métodos destes objetos os quais utilizamos para efetuar tarefas em nosso banco de dados. Você pode checar o primeiro artigo sobre ADO ADOX (ActiveX Data Objects).

Inicio pela conexão, pois nós precisamos de uma conexão aberta para abrir conjuntos de registros (recordsets) e efetuar operações em registros e tabelas como inserção, exclusão e edição de registros.

Vejamos então como abrir uma conexão em ADO.

Via de regra, para abrir um conexão ADO nós utilizamos o método Open de um objeto Connection. A parte importante aqui é a string de conexão. Conforme já explicado, podemos obter tal string diretamente do banco de dados através da propriedade Connection do objeto CurrentProject. Feito isso, basta copiar a string para utilização no seu projeto Excel.

Uma outra alternativa é utilizar um Data Link. Data Link será discutido mais adiante no curso.

Se a fonte de dados muda, então uma string é mais apropriada, pois não está ligada a uma fonte específica, bastando apenas adaptar conforme necessário (ou criar uma função para retornar a string dado certos parâmetros). De qualquer modo, a decisão final ficará a cargo mesmo de quem programa.

Para abrir a conexão podemos utilizar o seguinte código:

Sub conexao()

    Dim cn      As ADODB.Connection

    Dim strCn   As String

   

    strCn = "Provider=Microsoft.Jet.OLEDB.4.0;User ID=Admin;"

    strCn = strCn & "Data Source=C:\Northwind.mdb;"

   

    Set cn = New ADODB.Connection

    cn.Open strCn

End Sub

Note que acima, primeiramente declaramos o objeto, em seguida o instanciamos e finalmente o abrimos utilizando o método Open  do objeto Connection para abrir a conexão. Uma alternativa a isso é simplesmente declarar e instanciar ao meu tempo e logo a seguir abrir a conexão:

Sub conexao()

    Dim cn      As New ADODB.Connection

    Dim strCn   As String

   

    strCn = "Provider=Microsoft.Jet.OLEDB.4.0;User ID=Admin;"

    strCn = strCn & "Data Source=C:\Northwind.mdb;"

   

    cn.Open strCn

   

End Sub

Uma vez que a conexão esteja aberta e tenhamos terminado o seu uso, nós precisamos fazer duas coisas com ela:

1.Fechá-la

2.Limpá-la da memória

Para fechar uma conexão nós utilizamos o método Close do objeto. Para limpar o objeto da memória nós o setamos como sendo Nothing (nada):

cn.Close

Set cn = Nothing

Portanto, o processo completo entre declaração, abertura, fechamento e limpeza da conexão ficará:

Sub conexao()

    Dim cn      As New ADODB.Connection

   

    cn.Open strCn

   

'   Executaremos algo neste espaço

   

    cn.Close

    Set cn = Nothing

 

End Sub

Agora que o leitor já sabe como efetuar os passos acima, vejamos como abrir um recordset (conjunto de registros) o qual depende de uma conexão aberta para ser viável.

Tags: , , , ,

Microsoft Office | VBA

Os comentários estão fechados