Excel用户表单连接到访问表

时间:2018-10-21 15:12:48

标签: excel-vba

我正在尝试将用户窗体与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

0 个答案:

没有答案