运行时错误2471访问vba

时间:2015-12-23 18:29:01

标签: vba

请帮助 我有一个登录表单,其中组合框包含3个字段(EmployeeID,员工姓名:[FirstName]&""& [LastName],JobTitle - qry picked)。在下拉列表中只显示一个字段(属性设置0',1',0'宽度)。另外frmLogin包含一个用于输入密码的文本框,并且有两个隐藏文本框(Name和JobTitle用于执行其他功能)。当我选择UserName时,会填充隐藏的框;但是,当我输入密码时,弹出窗口显示运行时错误'2471' - 您作为查询参数输入的表达式产生以下错误:'admin'。

这是一个登录的代码。

Private Sub cmdLogin_Click()

If IsNull(Me.cboLoginName) Or Me.cboLoginName = "" Then
MsgBox "You must select an employee name.", vbOKOnly, "Required data"
Me.cboLoginName.SetFocus
Exit Sub
End If

If IsNull(Me.tbxPassword) Or Me.tbxPassword = "" Then
MsgBox "You must enter a password", vbOKOnly, "Required data"
Me.tbxPassword.SetFocus
Exit Sub
End If
'next line is highlighted as error
If Me.tbxPassword.Value = DLookup("Password", "tblEmployees", "[EmployeeID]=" & Me.cboLoginName.Value) Then
Me.Visible = False
DoCmd.OpenForm "frmEntry"
Else

MsgBox "Invalid employee name / password combination. Please try again.", vbOKOnly, "Invalid Entry!"
Me.tbxPassword.SetFocus

End If

End Sub

Query for the combobox

1 个答案:

答案 0 :(得分:0)

由于我不知道您的组合框的行数或控件指定的列数,请在DLookup之前粘贴以下代码并查看您应该使用的列:

Dim i As Integer
For i = 0 To Me.cboLoginName.ColumnCount
    Debug.Print "Column " & i & " contains '" & Me.cboLoginName.Column(i) & "'"
Next i
相关问题