Ms access 如何修复以下VBA代码

Ms access 如何修复以下VBA代码,ms-access,ms-access-2007,vba,ms-access-2010,ms-access-2003,Ms Access,Ms Access 2007,Vba,Ms Access 2010,Ms Access 2003,此代码用于填充表单中的文本框,其中sql查询代表hr\U id从表RR\U info中提取数据。它将RR\U info的hr\U id与listbox的有界值进行比较 Private Sub Form_Load() Dim SQL As String Dim db As Database Dim rs As DAO.Recordset SQL = "select * from RR_info where hr_id = " & Forms![hhrrr]![List38] &

此代码用于填充表单中的文本框,其中sql查询代表hr\U id从表RR\U info中提取数据。它将RR\U info的hr\U id与listbox的有界值进行比较

 Private Sub Form_Load()
 Dim SQL As String
 Dim db As Database
 Dim rs As DAO.Recordset

 SQL = "select * from RR_info where hr_id = " & Forms![hhrrr]![List38] & ";"
 Set db = CurrentDb
 Set rs = db.OpenRecordset(SQL)
                                'DoCmd.RunSQL SQL 'at this point it gives me error 2342
 Me.RR_ID.value = rs!RR_ID
 Me.HR_ID.value = rs!HR_ID 
 Me.Room_No.value = rs![Room No] 
 Me.No_of_Beds.value = rs!No_of_Beds
 Me.Room_Category.value = rs!Room_Category

 Set rs = Nothing
 Set db = Nothing
 End Sub
您不需要字符串“DoCmd.RunSQL”。
最好使用.Value而不是.Text

通过应用您的建议,问题没有得到解决,但出现了一个错误,错误代码为2448,“您无法为此对象赋值”。运行时错误3075。语法错误查询表达式“hr_id=”中缺少运算符。我还从属性窗口删除了行源属性,现在上面的VBA代码正在执行所有操作。