I am using VS2013 VB and have created several routines. The library project connects to Access (mdb and acceb) just fine. When I move the class to another project I get an error that it can not connect. Why?
My code it:
Public Function Open_Access(ByVal dbname As String, Optional ByVal usrname As String = "", Optional ByVal pwd As String = "", Optional accdbflg As Boolean = False) As Boolean
Dim sConnectString As String
Dim i As Integer
On Error GoTo ERR1
Open_Access = False ' default to failure
AccessDatabaseOpenFlag = False
If dbname = "" Then
Call Display_Message("Access database name not provided.")
Exit Function
End If
If File_Exists(dbname) = False Then ' if no such DB
Call Display_Message("Unable to locate Access database.")
Exit Function
End If
i = InStr(UCase(dbname), ".ACCDB")
If i < 1 Then
sConnectString = "Driver={Microsoft Access Driver (*.mdb)};Dbq=" & dbname
Else
sConnectString = "Provider=Microsoft.ACE.OLEDB.12.0;Persist Security Info=False;Data Source=" & dbname & ";"
End If
If usrname <> "" Then ' if username provided
sConnectString = sConnectString & ";Uid=" & usrname
End If
If pwd <> "" Then ' if password there
sConnectString = sConnectString & ";Pwd=" & pwd
End If
dba.Open(sConnectString)
Open_Access = True
AccessDatabaseOpenFlag = True
Exit Function
ERR1:
Call Display_Error_Message("Error opening Access DB")
Exit Function
End Function
My code it:
Public Function Open_Access(ByVal dbname As String, Optional ByVal usrname As String = "", Optional ByVal pwd As String = "", Optional accdbflg As Boolean = False) As Boolean
Dim sConnectString As String
Dim i As Integer
On Error GoTo ERR1
Open_Access = False ' default to failure
AccessDatabaseOpenFlag = False
If dbname = "" Then
Call Display_Message("Access database name not provided.")
Exit Function
End If
If File_Exists(dbname) = False Then ' if no such DB
Call Display_Message("Unable to locate Access database.")
Exit Function
End If
i = InStr(UCase(dbname), ".ACCDB")
If i < 1 Then
sConnectString = "Driver={Microsoft Access Driver (*.mdb)};Dbq=" & dbname
Else
sConnectString = "Provider=Microsoft.ACE.OLEDB.12.0;Persist Security Info=False;Data Source=" & dbname & ";"
End If
If usrname <> "" Then ' if username provided
sConnectString = sConnectString & ";Uid=" & usrname
End If
If pwd <> "" Then ' if password there
sConnectString = sConnectString & ";Pwd=" & pwd
End If
dba.Open(sConnectString)
Open_Access = True
AccessDatabaseOpenFlag = True
Exit Function
ERR1:
Call Display_Error_Message("Error opening Access DB")
Exit Function
End Function