我正在尝试将用户窗体与MS Access表(3列FullName,UserName,Password)连接,以便当用户(在Excel useform中)键入UserName和password并且都是正确的MS Access表时,将返回Excel用户FullName。有什么想法吗?
下面的基本代码没有与UseForm的连接。
Const ConStrAccess As String = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Users\Desktop\Test2.mdb;Persist Security Info=False;"
Sub CopyDataFromDb()
' early binding
Dim USR As ADODB.Connection
Dim USRdata As ADODB.RecordSet
Dim USRfield As ADODB.Field
Set USR = New ADODB.Connection
Set USRdata = New ADODB.RecordSet
Set UserN = Range("d2")
Set PassW = Range("e2")
USR.ConnectionString = ConStrAccess
USR.Open
On Error GoTo CloseRecordConnection
With USRdata
.ActiveConnection = ConStrAccess
.Source = GetSQLString
.LockType = adLockReadOnly
.CursorType = adOpenForwardOnly
.Open
End With
On Error GoTo CloseRecordSet
On Error GoTo 0
CloseRecordSet:
USRdata.Close
CloseRecordConnection:
USR.Close
End Sub
Function GetSQLString() As String
Dim PassW As Integer
Dim SQLString As String
UserN = "a1"
PassW = "37954675"
SQLString = " select Name_Surname, UserName, PassWord " & _
" FROM Test2 " & _
" WHERE UserName = UserN and PassWord = PassW ;"
GetSQLString = SQLString
End Function