MIGRAR DAO PARA ADO - 64BIT ACCESS 2013
Senhores, boa tarde
tenho códigos em VBA (AutoCAD) e preciso migrar algumas funções de DAO para ADO devido a novos sistemas 64bit em conjunto com ACCESS 2013.
usei algumas dicas encontradas no fórum mas não obtive sucesso portanto descrevo basicamente um modelo de conexão resposta no qual tive mais dificuldade.
pergunto:
quais seriam as bibliotecas obrigatórias a setar e qual seria a melhor maneira de escrita para o código abaixo?
desde já agradeço a todos.
Dim db As Database, rs As Recordset
Set db = OpenDatabase([Ô]C:\banco.accdb[Ô], False, False, [Ô];PWD=senha[Ô])
Set rs = db.OpenRecordset([Ô]select * FROM tabela WHERE campo = [ô][Ô] + texto + [Ô][ô][Ô])
While Not rs.EOF
If Not rs.EOF Then
MsgBox CStr(rs([Ô]valorEncontrado[Ô]))
rs.MoveNext
End If
Wend
rs.Close
db.Close
tenho códigos em VBA (AutoCAD) e preciso migrar algumas funções de DAO para ADO devido a novos sistemas 64bit em conjunto com ACCESS 2013.
usei algumas dicas encontradas no fórum mas não obtive sucesso portanto descrevo basicamente um modelo de conexão resposta no qual tive mais dificuldade.
pergunto:
quais seriam as bibliotecas obrigatórias a setar e qual seria a melhor maneira de escrita para o código abaixo?
desde já agradeço a todos.
Dim db As Database, rs As Recordset
Set db = OpenDatabase([Ô]C:\banco.accdb[Ô], False, False, [Ô];PWD=senha[Ô])
Set rs = db.OpenRecordset([Ô]select * FROM tabela WHERE campo = [ô][Ô] + texto + [Ô][ô][Ô])
While Not rs.EOF
If Not rs.EOF Then
MsgBox CStr(rs([Ô]valorEncontrado[Ô]))
rs.MoveNext
End If
Wend
rs.Close
db.Close
1. Na janela do VB , selecione Project|References no menu principal
2. Secione Microsoft ActiveX Data Objects 2.X Library na lista de referências exibidas
3. Verifique se as seguintes bibliotecas também estão selecionadas:
Visual Basic for Applications
Visual Basic objects and procedures
Visual Basic runtime objects and procedures e OLE automation
Espero ter ajudado
2. Secione Microsoft ActiveX Data Objects 2.X Library na lista de referências exibidas
3. Verifique se as seguintes bibliotecas também estão selecionadas:
Visual Basic for Applications
Visual Basic objects and procedures
Visual Basic runtime objects and procedures e OLE automation
Dim db As ADODB.Connection, rs As ADODB.Recordset
Set db = CreateObject([Ô]ADODB.Connection[Ô])
db.CursorLocation = adUseClient
db.Open [Ô]Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\banco.accdb;Jet OLEDB:Database Password=senha;[Ô]
Set rs = CreateObject([Ô]ADODB.Recordset[Ô])
rs.Open [Ô]SELECT * FROM tabela WHERE campo = [ô][Ô] & texto & [Ô][ô][Ô], db
If rs.RecordCount > 0 Then
rs.MoveFirst
While Not rs.EOF
MsgBox CStr(rs([Ô]valorEncontrado[Ô]))
rs.MoveNext
Wend
End If
rs.Close
db.Close
Espero ter ajudado
Filman
mto obrigado
funcionou 100%
mto obrigado
funcionou 100%
Tópico encerrado , respostas não são mais permitidas