我有一个名为tblEmployees的表 - ID,First,Last。一个名为frmSearch的未绑定表单,其中包含一个名为Searchbox的文本框和一个按ID搜索的搜索按钮。我还有一个名为frmDisplay的未绑定表单,其中显示了我想要在必要时编辑的搜索结果。此表单的文本框字段是EID,Fname,Lname。
我遇到的问题是当我在搜索框中输入ID#并单击搜索按钮(我在按钮向导中链接两个ID字段)时,它会继续显示我表格中的第二条记录。这是我目前运行的代码
Private Sub Form_Load()
Dim rst As Recordset
Set rst = CurrentDb.OpenRecordset("SELECT * from tblEmployees WHERE ID=ID")
EID.Value = rst!ID
Fname.Value = rst!First
Lname.Value = rst!Last
end sub
当我将代码更改为
时("SELECT * tblEmployees WHERE ID=" & ID")
我在查询表达式ID ="
中遇到语法错误缺少运算符答案 0 :(得分:0)
ID必须有一些价值。然后连接ID:
"Select * From tblEmployees Where ID = " & ID & ""
答案 1 :(得分:0)
当前正在打开的记录集将包含表中的所有记录,因为对于每条记录,条件ID = ID
将始终为真。它显示了你桌子上的第二张记录,这纯属巧合。您没有在记录集查询中指定排序,因此它可以随机选取任何记录作为结果中的第一个记录。你真正需要的是
Set rst = CurrentDb.OpenRecordset("SELECT * from tblEmployees WHERE ID = " & frmSearch!Searchbox)