Para DAO eu utilizo assim:
Dim DbName As String
Dim Wrk As Workspace
On Error GoTo Erro:
DbName = App.Path & "Banco.mdb"
'indica o banco de dados
Set Wrk = DBEngine.Workspaces(0)
Set Banco = Wrk.OpenDatabase(DbName, False, False, ";PWD=senha")
'indica a tabela
Set Cliente = Banco.OpenRecordset("TblClientes", dbOpenDynaset)
E ADO eu uso assim:
Option Explicit
Public CON As ADODB.Connection
Public RS As ADODB.Recordset
Public Aplicacao As New CRAXDRT.Application
Public Report As New CRAXDRT.Report
Sub Connect()
Set CON = CreateObject("ADODB.Connection")
Set RS = CreateObject("ADODB.Recordset")
CON.Open "Provider = Microsoft.Jet.OLEDB.4.0;Data Source = " & App.Path & "Banco.mdb;Jet OLEDB:database Password=senha"
RS.CursorLocation = adUseClient
End Sub
Espero ter ajudado