如何通过MS Access中的VBA填充文本框

时间:2013-09-18 06:22:35

标签: ms-access ms-access-2007 access-vba ms-access-2010 ms-access-2003

我有一个表RR_info,其中包含以下字段RR_ID,HR_ID,No_of_Beds,Room_Category。现在我希望通过带有Form_load事件的VBA代码,我应该为所有这些表字段填充文本框。为此我写了一个查询,根据hotel_id获取某些记录作为标准,但代码不起作用。

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)

Me.RR_ID.Text = rs!RR_ID
Me.HR_ID.Text = rs!HR_ID
Me.Room_No.Text = rs![Room No]
Me.No_of_Beds.text = rs!No_of_Beds
Me.Room_Category.text = rs!Room_Category

Set rs = Nothing
Set db = Nothing

End Sub

enter image description here

这是表格的图片,其中我想根据标准通过VBA

添加表格数据

1 个答案:

答案 0 :(得分:11)

.Text属性仅适用于当前具有焦点的控件。当您尝试在任何其他控件上引用.Text时,您将触发错误。无论控件是否具有焦点,.Value属性都可用。

为安全起见,请将它们全部更改为.Value

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